Бөлісу құралы:


ToolStripManager.Merge Метод

Определение

ToolStrip Объединяет элементы управления.

Перегрузки

Имя Описание
Merge(ToolStrip, String)

Объединяет два ToolStrip объекта одного типа.

Merge(ToolStrip, ToolStrip)

Объединяет два ToolStrip объекта разных типов.

Merge(ToolStrip, String)

Исходный код:
ToolStripManager.cs
Исходный код:
ToolStripManager.cs
Исходный код:
ToolStripManager.cs
Исходный код:
ToolStripManager.cs
Исходный код:
ToolStripManager.cs

Объединяет два ToolStrip объекта одного типа.

public:
 static bool Merge(System::Windows::Forms::ToolStrip ^ sourceToolStrip, System::String ^ targetName);
public static bool Merge(System.Windows.Forms.ToolStrip sourceToolStrip, string targetName);
static member Merge : System.Windows.Forms.ToolStrip * string -> bool
Public Shared Function Merge (sourceToolStrip As ToolStrip, targetName As String) As Boolean

Параметры

sourceToolStrip
ToolStrip

ЗначениеToolStrip, комбинируется targetName с ToolStrip ссылкой на параметр.

targetName
String

Имя ToolStrip , которое получает ToolStrip ссылку sourceToolStrip на параметр.

Возвращаемое значение

true Значение , если слияние выполнено успешно; falseв противном случае .

Исключения

sourceToolStrip или targetName есть null.

sourceToolStrip или targetName ссылаться на то же ToolStripсамое.

Комментарии

ToolStripManager.Merge Используйте метод для объединения ToolStrip объектов идентичного типа, таких как ToolStrip объекты с другими объектами, MenuStrip объектами с другими ToolStripMenuStrip объектами и т. д.

ToolStripManager.Merge Используйте метод для объединения ToolStrip объектов разных типов.

Свойство ToolStrip.AllowMerge должно иметь true значение для обоих ToolStrip объектов, а исходные и целевые типы должны быть идентичными, или этот метод возвращает.false

Замечание

Если в дочерней форме MDI есть два MenuStrip элемента управления, параметр IsMdiContainer для true родительской формы объединяет содержимое только одного из MenuStrip элементов управления. Используется Merge для объединения содержимого дополнительных дочерних MenuStrip элементов управления в родительской форме MDI.

См. также раздел

Применяется к

Merge(ToolStrip, ToolStrip)

Исходный код:
ToolStripManager.cs
Исходный код:
ToolStripManager.cs
Исходный код:
ToolStripManager.cs
Исходный код:
ToolStripManager.cs
Исходный код:
ToolStripManager.cs

Объединяет два ToolStrip объекта разных типов.

public:
 static bool Merge(System::Windows::Forms::ToolStrip ^ sourceToolStrip, System::Windows::Forms::ToolStrip ^ targetToolStrip);
public static bool Merge(System.Windows.Forms.ToolStrip sourceToolStrip, System.Windows.Forms.ToolStrip targetToolStrip);
static member Merge : System.Windows.Forms.ToolStrip * System.Windows.Forms.ToolStrip -> bool
Public Shared Function Merge (sourceToolStrip As ToolStrip, targetToolStrip As ToolStrip) As Boolean

Параметры

sourceToolStrip
ToolStrip

ЗначениеToolStrip, комбинируется targetToolStrip с ToolStrip ссылкой на параметр.

targetToolStrip
ToolStrip

Объект ToolStrip , который получает ToolStrip ссылку на sourceToolStrip параметр.

Возвращаемое значение

true Значение , если слияние выполнено успешно; falseв противном случае .

Примеры

В следующем примере кода объединяются элементы меню на основе указанных вариантов. Этот пример является частью более крупного примера, доступного в обзоре ToolStripManager класса.

private MergeSample CurrentSample
{
    get { return currentSample; }
    set
    {
        if (currentSample != value)
        {
            bool resetRequired = false;

            if (currentSample == MergeSample.MatchOnly)
            {
                resetRequired = true;
            }
            currentSample = value;
            // Undo previous merge, if any.
            ToolStripManager.RevertMerge(cmsBase, cmsItemsToMerge);
            if (resetRequired)
            {
                RebuildItemsToMerge();
            }

            switch (currentSample)
            {
                case MergeSample.None:
                    return;
                case MergeSample.Append:
                    ScenarioText = "This sample adds items to the end of the list using MergeAction.Append.\r\n\r\nThis is the default setting for MergeAction. A typical scenario is adding menu items to the end of the menu when some part of the program is activated.";
                    ShowAppendSample();
                    break;
                case MergeSample.InsertInSameLocation:
                    ScenarioText = "This sample adds items to the middle of the list using MergeAction.Insert.\r\n\r\nNotice here how the items are added in reverse order: four, three, two, one. This is because they all have the same merge index.\r\n\r\nA typical scenario is adding menu items to the middle or beginning of the menu when some part of the program is activated. ";
                    ShowInsertInSameLocationSample();
                    break;
                case MergeSample.InsertInSameLocationPreservingOrder:
                    ScenarioText = "This sample is the same as InsertInSameLocation, except the items are added in normal order by increasing the MergeIndex of \"two merged items\" to be 3, \"three merged items\" to be 5, and so on.\r\n  You could also add the original items backwards to the source ContextMenuStrip.";
                    ShowInsertInSameLocationPreservingOrderSample();
                    break;
                case MergeSample.ReplacingItems:
                    ScenarioText = "This sample replaces a menu item using MergeAction.Replace. Use this for the MDI scenario where saving does something completely different.\r\n\r\nMatching is based on the Text property. If there is no text match, merging reverts to MergeIndex.";
                    ShowReplaceSample();
                    break;
                case MergeSample.MatchOnly:
                    ScenarioText = "This sample adds only the subitems from the child to the target ContextMenuStrip.";
                    ShowMatchOnlySample();
                    break;
            }
            // Reapply with the new settings.
            ToolStripManager.Merge(cmsItemsToMerge, cmsBase);
        }
    }
}

Private Property CurrentSample() As MergeSample
   Get
      Return currentSample1
   End Get
   Set
      If currentSample1 <> value Then
         Dim resetRequired As Boolean = False
         
         If currentSample1 = MergeSample.MatchOnly Then
            resetRequired = True
         End If
         currentSample1 = value
         ' Undo previous merge, if any.
         ToolStripManager.RevertMerge(cmsBase, cmsItemsToMerge)
         If resetRequired Then
            RebuildItemsToMerge()
         End If
         
         Select Case currentSample1
            Case MergeSample.None
                  Return
            Case MergeSample.Append
               ScenarioText = "This sample adds items to the end of the list using MergeAction.Append." + ControlChars.Cr + ControlChars.Lf + ControlChars.Cr + ControlChars.Lf + "This is the default setting for MergeAction. A typical scenario is adding menu items to the end of the menu when some part of the program is activated."
               ShowAppendSample()
            Case MergeSample.InsertInSameLocation
               ScenarioText = "This sample adds items to the middle of the list using MergeAction.Insert." + ControlChars.Cr + ControlChars.Lf + ControlChars.Cr + ControlChars.Lf + "Notice here how the items are added in reverse order: four, three, two, one. This is because they all have the same merge index." + ControlChars.Cr + ControlChars.Lf + ControlChars.Cr + ControlChars.Lf + "A typical scenario is adding menu items to the middle or beginning of the menu when some part of the program is activated. "
               ShowInsertInSameLocationSample()
            Case MergeSample.InsertInSameLocationPreservingOrder
               ScenarioText = "This sample is the same as InsertInSameLocation, except the items are added in normal order by increasing the MergeIndex of ""two merged items"" to be 3, ""three merged items"" to be 5, and so on." + ControlChars.Cr + ControlChars.Lf + "  You could also add the original items backwards to the source ContextMenuStrip."
               ShowInsertInSameLocationPreservingOrderSample()
            Case MergeSample.ReplacingItems
               ScenarioText = "This sample replaces a menu item using MergeAction.Replace. Use this for the MDI scenario where saving does something completely different." + ControlChars.Cr + ControlChars.Lf + ControlChars.Cr + ControlChars.Lf + "Matching is based on the Text property. If there is no text match, merging reverts to MergeIndex."
               ShowReplaceSample()
            Case MergeSample.MatchOnly
               ScenarioText = "This sample adds only the subitems from the child to the target ContextMenuStrip."
               ShowMatchOnlySample()
         End Select
         
         ' Reapply with the new settings.
         ToolStripManager.Merge(cmsItemsToMerge, cmsBase)
      End If
   End Set
End Property

Комментарии

ToolStripManager.Merge Используйте метод для объединения ToolStrip объектов разных типов.

ToolStripManager.Merge Используйте метод для объединения ToolStrip объектов идентичного типа, таких как ToolStrip объекты с другими объектами, MenuStrip объектами с другими ToolStripMenuStrip объектами и т. д.

Свойство ToolStrip.AllowMerge должно быть задано true для обоих ToolStrip объектов или возвращается falseэтот метод.

Замечание

Если в дочерней форме MDI есть два MenuStrip элемента управления, параметр IsMdiContainer для true родительской формы объединяет содержимое только одного из MenuStrip элементов управления. Используется Merge для объединения содержимого дополнительных дочерних MenuStrip элементов управления в родительской форме MDI.

См. также раздел

Применяется к