ToolStripManager.Merge Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Combina i controlli ToolStrip.
Overload
Merge(ToolStrip, String) |
Combina due oggetti ToolStrip dello stesso tipo. |
Merge(ToolStrip, ToolStrip) |
Combina due oggetti ToolStrip di tipo diverso. |
Merge(ToolStrip, String)
Combina due oggetti ToolStrip dello stesso tipo.
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
Parametri
- sourceToolStrip
- ToolStrip
ToolStrip da combinare con l'oggetto ToolStrip specificato dal parametro targetName
.
- targetName
- String
Nome dell'oggetto ToolStrip che riceve l'oggetto ToolStrip specificato dal parametro sourceToolStrip
.
Restituisce
true
se l'unione è stata eseguita correttamente; in caso contrario, false
.
Eccezioni
sourceToolStrip
o targetName
è null
.
sourceToolStrip
o targetName
fa riferimento allo stesso oggetto ToolStrip.
Commenti
Usare il ToolStripManager.Merge metodo per combinare ToolStrip oggetti di tipo identico, ad esempio ToolStrip oggetti con altri oggetti, MenuStrip oggetti con altri ToolStrip MenuStrip oggetti e così via.
Usare il ToolStripManager.Merge metodo per combinare ToolStrip oggetti di tipi diversi.
La ToolStrip.AllowMerge proprietà deve essere impostata su true
per entrambi ToolStrip gli oggetti e i tipi di origine e di destinazione devono essere identici oppure questo metodo restituisce false
.
Nota
Se sono presenti due MenuStrip controlli in un modulo figlio MDI, l'impostazione IsMdiContainer su true
per il modulo padre unisce il contenuto di uno solo dei MenuStrip controlli. Usare Merge per unire il contenuto di controlli figlio MenuStrip aggiuntivi nel modulo padre MDI.
Vedi anche
Si applica a
Merge(ToolStrip, ToolStrip)
Combina due oggetti ToolStrip di tipo diverso.
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
Parametri
- sourceToolStrip
- ToolStrip
ToolStrip da combinare con l'oggetto ToolStrip specificato dal parametro targetToolStrip
.
- targetToolStrip
- ToolStrip
Oggetto ToolStrip che riceve l'oggetto ToolStrip specificato dal parametro sourceToolStrip
.
Restituisce
true
se l'unione è stata eseguita correttamente; in caso contrario, false
.
Esempio
L'esempio di codice seguente unisce le voci di menu in base alle scelte specificate. Questo esempio fa parte di un esempio più ampio disponibile nella panoramica della ToolStripManager classe.
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
Commenti
Usare il ToolStripManager.Merge metodo per combinare ToolStrip oggetti di tipi diversi.
Usare il ToolStripManager.Merge metodo per combinare ToolStrip oggetti di tipo identico, ad esempio ToolStrip oggetti con altri oggetti, MenuStrip oggetti con altri ToolStrip MenuStrip oggetti e così via.
La ToolStrip.AllowMerge proprietà deve essere impostata su true
per entrambi ToolStrip gli oggetti oppure questo metodo restituisce false
.
Nota
Se sono presenti due MenuStrip controlli in un modulo figlio MDI, l'impostazione IsMdiContainer su true
per il modulo padre unisce il contenuto di uno solo dei MenuStrip controlli. Usare Merge per unire il contenuto di controlli figlio MenuStrip aggiuntivi nel modulo padre MDI.