DesignerActionList.GetSortedActionItems Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает коллекцию объектов DesignerActionItem, содержащихся в списке.
public:
virtual System::ComponentModel::Design::DesignerActionItemCollection ^ GetSortedActionItems();
public virtual System.ComponentModel.Design.DesignerActionItemCollection GetSortedActionItems ();
abstract member GetSortedActionItems : unit -> System.ComponentModel.Design.DesignerActionItemCollection
override this.GetSortedActionItems : unit -> System.ComponentModel.Design.DesignerActionItemCollection
Public Overridable Function GetSortedActionItems () As DesignerActionItemCollection
Возвращаемое значение
Массив типа DesignerActionItem, который содержит элементы списка.
Примеры
В следующем примере кода показано, как создать коллекцию DesignerActionItem объектов .
Полное описание этого примера кода см. в разделе Практическое руководство. Присоединение смарт-тегов к компоненту Windows Forms.
public override DesignerActionItemCollection GetSortedActionItems()
{
DesignerActionItemCollection items = new DesignerActionItemCollection();
//Define static section header entries.
items.Add(new DesignerActionHeaderItem("Appearance"));
items.Add(new DesignerActionHeaderItem("Information"));
//Boolean property for locking color selections.
items.Add(new DesignerActionPropertyItem("LockColors",
"Lock Colors", "Appearance",
"Locks the color properties."));
if (!LockColors)
{
items.Add(new DesignerActionPropertyItem("BackColor",
"Back Color", "Appearance",
"Selects the background color."));
items.Add(new DesignerActionPropertyItem("ForeColor",
"Fore Color", "Appearance",
"Selects the foreground color."));
//This next method item is also added to the context menu
// (as a designer verb).
items.Add(new DesignerActionMethodItem(this,
"InvertColors", "Invert Colors",
"Appearance",
"Inverts the fore and background colors.",
true));
}
items.Add(new DesignerActionPropertyItem("Text",
"Text String", "Appearance",
"Sets the display text."));
//Create entries for static Information section.
StringBuilder location = new StringBuilder("Location: ");
location.Append(colLabel.Location);
StringBuilder size = new StringBuilder("Size: ");
size.Append(colLabel.Size);
items.Add(new DesignerActionTextItem(location.ToString(),
"Information"));
items.Add(new DesignerActionTextItem(size.ToString(),
"Information"));
return items;
}
Public Overrides Function GetSortedActionItems() _
As DesignerActionItemCollection
Dim items As New DesignerActionItemCollection()
'Define static section header entries.
items.Add(New DesignerActionHeaderItem("Appearance"))
items.Add(New DesignerActionHeaderItem("Information"))
'Boolean property for locking color selections.
items.Add(New DesignerActionPropertyItem( _
"LockColors", _
"Lock Colors", _
"Appearance", _
"Locks the color properties."))
If Not LockColors Then
items.Add( _
New DesignerActionPropertyItem( _
"BackColor", _
"Back Color", _
"Appearance", _
"Selects the background color."))
items.Add( _
New DesignerActionPropertyItem( _
"ForeColor", _
"Fore Color", _
"Appearance", _
"Selects the foreground color."))
'This next method item is also added to the context menu
' (as a designer verb).
items.Add( _
New DesignerActionMethodItem( _
Me, _
"InvertColors", _
"Invert Colors", _
"Appearance", _
"Inverts the fore and background colors.", _
True))
End If
items.Add( _
New DesignerActionPropertyItem( _
"Text", _
"Text String", _
"Appearance", _
"Sets the display text."))
'Create entries for static Information section.
Dim location As New StringBuilder("Location: ")
location.Append(colLabel.Location)
Dim size As New StringBuilder("Size: ")
size.Append(colLabel.Size)
items.Add( _
New DesignerActionTextItem( _
location.ToString(), _
"Information"))
items.Add( _
New DesignerActionTextItem( _
size.ToString(), _
"Information"))
Return items
End Function
Комментарии
Метод virtual
GetSortedActionItems реализуется для возврата в ожидаемом порядке отображения коллекции объектов, производных от DesignerActionItem класса . Эти элементы могут иметь следующие типы.
Тип | Описание |
---|---|
DesignerActionHeaderItem | Метка группы, выделенная полужирным шрифтом. |
DesignerActionTextItem | Метка, отображаемая простым шрифтом. |
DesignerActionPropertyItem | Элемент панели, связанный со свойством . Также может отображаться флажок или редактор свойств, связанный с базовым свойством. |
DesignerActionMethodItem | Элемент панели, отображаемый в виде гиперссылки и связанный с методом. |
Для каждого DesignerActionMethodItem и DesignerActionPropertyItemнеобходимо добавить соответствующий метод или свойство в предоставленный программистом класс, производный DesignerActionList от класса . Каждый метод и элемент свойства отображается в виде активной записи; взаимодействие с ним через пользовательский интерфейс вызывает соответствующий метод или свойство соответственно.
Элементы свойств имеют специальный интерфейс panel-item, который позволяет отображать значения соответствующих свойств и манипулировать ими. Дополнительные сведения см. в описании класса DesignerActionPropertyItem.
Порядок элементов в возвращаемом массиве отражает порядок их отображения на панели. Элементы группируются в соответствии со свойством Category , используя следующие правила:
Категория первого обнаруженного элемента означает начало первой группы. Эта группа продолжается до тех пор, пока каждый последующий элемент относится к одной категории. При обнаружении элемента другой, новой категории создается новая группа и элемент помещается в нее.
Если тип элемента отличается от текущей группы, но эта категория уже использовалась, элемент помещается в соответствующую существующую категорию.
Если элемент не имеет категории, он помещается в группу прочего в конце панели. Эта группа также содержит элементы, свойство которых AllowAssociate имеет значение
false
.
Метод GetSortedActionItems вызывается при первом создании панели. Чтобы обновить список элементов, отображаемых на панели, необходимо вызвать Refresh метод .
Применяется к
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по