AmalRaj@Sync Ответов: 1

Как добавить существующие actionitems к новым actionitems в C#


Всем Привет,

Я разрабатываю общую панель smartTag и получаю базовую форму smartTag для своего проекта. Я хочу добавить существующие элементы действия базового смарт-тега в производный смарт-тег. Я хочу добавить элементы базовой панели под элементами производной панели. Есть ли какой-нибудь простой способ добавить базовые элементы без foreach непосредственно под элементами действия?

public override DesignerActionItemCollection GetSortedActionItems()
{
    DesignerActionItemCollection actionItems = new DesignerActionItemCollection();

    //adds the new smart tag action items.
    actionItems.Add(new DesignerActionHeaderItem("MySmartTag Support"));
    actionItems.Add(new DesignerActionPropertyItem("BackColor", "Back Color"));
    actionItems.Add(new DesignerActionPropertyItem("ForeColor", "Fore Color"));

    //adds the action items from base smart tag.
    foreach (DesignerActionItem baseItem in base.GetSortedActionItems())
    {
        actionItems.Add(baseItem);
    }
    return actionItems;
}


Я добавляю базовые элементы действия ниже новых элементов действия с помощью цикла for, есть ли какой-нибудь способ избежать цикла и минимизировать код?

Спасибо и с уважением,
Амаль Раж

Что я уже пробовал:

Я попытался добавить существующие базовые элементы с помощью цикла for. дайте мне знать, как избежать петли.

1 Ответов

Рейтинг:
5

AmalRaj@Sync

Я нашел ответ, вставка-это лучший вариант.

public override DesignerActionItemCollection GetSortedActionItems()
{
   DesignerActionItemCollection actionItems = base.GetSortedActionItems();

   //inserts the new smart tag action items.
   actionItems.Insert(0, new DesignerActionHeaderItem("MySmartTag Support"));
   actionItems.Insert(1, new DesignerActionPropertyItem("BackColor", "Back Color"));
   actionItems.Insert(2, new DesignerActionPropertyItem("ForeColor", "Fore Color"));

   return actionItems;
}