DesignerActionList.GetSortedActionItems Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Devolve a coleção de DesignerActionItem objetos contidos na lista.
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
Devoluções
Um DesignerActionItem array que contém os itens desta lista.
Exemplos
O exemplo de código seguinte demonstra como criar uma coleção de DesignerActionItem objetos.
Para uma explicação completa deste exemplo de código, veja Como: Anexar Smart Tags a um componente 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
Observações
O virtualGetSortedActionItems método é implementado para devolver, na ordem de exibição esperada, uma coleção de objetos derivados da DesignerActionItem classe. Estes itens podem ser dos seguintes tipos específicos.
| Tipo | Descrição |
|---|---|
| DesignerActionHeaderItem | A etiqueta do grupo, exibida a negrito. |
| DesignerActionTextItem | Uma etiqueta, apresentada numa fonte simples. |
| DesignerActionPropertyItem | Um item de painel associado a uma propriedade. Pode também apresentar uma marca de verificação ou editor de propriedades associada à propriedade subjacente. |
| DesignerActionMethodItem | Um elemento do painel apresentado como um hiperlink e associado a um método. |
Para cada DesignerActionMethodItem e DesignerActionPropertyItem, um método ou propriedade correspondente deve ser adicionado à classe fornecida pelo programador derivada da DesignerActionList classe. Cada item de método e propriedade é apresentado como uma entrada ativa; interagir com ela através da interface de utilizador (UI) invoca, respetivamente, o método ou propriedade correspondente.
Os itens de propriedade possuem uma interface especial painel-item que permite a visualização e manipulação dos respetivos valores das propriedades. Para obter mais informações, consulte a classe DesignerActionPropertyItem.
A ordem dos itens no array devolvido reflete a ordem em que aparecerão no painel. Os itens são agrupados de acordo com a Category propriedade, usando as seguintes regras:
A categoria do primeiro item encontrado indica o início do primeiro grupo. Esse grupo mantém-se enquanto cada item subsequente for da mesma categoria. Quando um item de uma categoria diferente é encontrado, um novo grupo é criado e o item é colocado nele.
Se um item tiver um tipo diferente do grupo atual, mas essa categoria já tiver sido utilizada, o item é colocado na categoria correspondente existente.
Se um item não tiver categoria, é colocado num grupo diverso no final do painel. Este grupo também contém itens cuja AllowAssociate propriedade é definida como
false.
O GetSortedActionItems método é chamado quando o painel é criado pela primeira vez. Deve chamar o Refresh método para atualizar a lista de itens exibidos no painel.