Windows Forms MenuStrip Denetiminde Menü Öğelerini Birleştirme

Çok belgeli bir arabirim (MDI) uygulama varsa, menü öğelerini veya tam menüleri alt formda üst formun menülerinde birleştirebilirsiniz.

Bu konuda, bir MDI uygulamasında menü öğelerini birleştirmeyle ilişkili temel kavramlar açıklanmıştır.

Genel Kavramlar

Birleştirme yordamları hem hedef hem de kaynak denetimi içerir:

  • Hedef, menü öğelerini birleştirerek ana veya MenuStrip MDI üst formu üzerinde denetimdir.

  • Kaynak, hedef menüde birleştirmek istediğiniz menü MenuStrip öğelerini içeren MDI alt formundaki denetimdir.

özelliği, açılan listesini geçerli MDI üst formunun MDI alt öğeleriyle dolduracak menü MdiWindowListItem öğesini tanımlar. Örneğin, genellikle pencere menüsünde açık olan MDI alt öğeleri listeleyebilirsiniz.

özelliği, IsMdiWindowListEntry MDI alt formundaki bir MenuStrip öğesinden gelen menü öğelerini tanımlar.

Menü öğelerini el ile veya otomatik olarak birleştirebilirsiniz. Menü öğeleri her iki yöntemde de aynı şekilde birleşir, ancak bu konunun devam eden "El ile Birleştirme" ve "Otomatik Birleştirme" bölümlerinde ele alınarak birleştirme farklı şekilde etkinleştirilir. El ile ve otomatik birleştirmede her birleştirme eylemi bir sonraki birleştirme eylemlerini etkiler.

MenuStrip birleştirmede olduğu gibi menü öğelerini kopyalama yerine bir öğeden ToolStrip diğerine MainMenu taşır.

MergeAction Değerleri

Özelliğini kullanarak kaynak menü öğelerinde birleştirme MenuStrip eylemlerini MergeAction ayarlarsanız.

Aşağıdaki tabloda kullanılabilir birleştirme eylemlerinin anlamı ve tipik kullanımı açık bulunmaktadır.

MergeAction Değeri Açıklama Genel kullanım
Append (Varsayılan) Kaynak öğeyi hedef öğe koleksiyonunun sonuna ekler. Programın bir bölümü etkinleştirildiğinde menenin sonuna menü öğeleri ekleme.
Insert Kaynak öğede ayarlanmış özellik tarafından belirtilen konumdaki hedef öğenin MergeIndex koleksiyonuna kaynak öğeyi ekler. Programın bir bölümü etkinleştirildiğinde menü öğelerini men başlangıcına veya ortaya ekleme.

değeri her MergeIndex iki menü öğesi için de aynı ise, bunlar ters sırada eklenir. Özgün MergeIndex sırayı korumak için uygun şekilde ayarlayın.
Replace Bir metin eşleşmesi bulur veya metin eşleşmesi bulunamıyorsa değeri kullanır ve eşleşen hedef menü öğesini MergeIndex kaynak menü öğesiyle değiştirir. Hedef menü öğesini, farklı bir şey yapmak için aynı adı alan bir kaynak menü öğesiyle değiştirme.
MatchOnly Bir metin eşleşmesi bulur veya metin eşleşmesi bulunamıyorsa değeri kullanır ve ardından kaynaktan hedefe MergeIndex tüm açılan öğeleri ekler. Menü öğelerini bir alt menüye ekleyen veya alt menüden kaldıran bir menü yapısı oluşturur. Örneğin, MDI alt öğesinden ana Farklı Kaydet menüsüne bir menü MenuStripMenuStrip

MatchOnly herhangi bir işlem yapmadan menü yapısında gezinmenize olanak sağlar. Sonraki öğeleri değerlendirmek için bir yol sağlar.
Remove Bir metin eşleşmesi bulur veya metin eşleşmesi bulunamıyorsa değeri kullanır ve ardından MergeIndex öğeyi hedeften kaldırır. Hedeften bir menü öğesini MenuStrip kaldırma.

El ile Birleştirme

Otomatik MenuStrip birleştirmeye yalnızca denetimler katılabilir. ve denetimleri gibi diğer denetimlerin öğelerini birleştirmek için, gerektiğinde kodunuzdaki ve yöntemlerini çağırarak bunları ToolStripStatusStrip el ile MergeRevertMerge birleştirmeniz gerekir.

Otomatik Birleştirme

Kaynak formu etkinleştirerek MDI uygulamaları için otomatik birleştirmeyi kullanabilirsiniz. Bir MDI uygulamasında kullanmak için, kaynakta gerçekleştirilen birleştirme eylemlerinin hedefte yansıtacak MenuStripMainMenuStrip şekilde özelliğini hedefe MenuStripMenuStripMenuStrip ayarlayın.

MDI kaynağında etkinleştirerek otomatik MenuStrip birleştirmeyi tetiklersiniz. Etkinleştirmeden sonra kaynak MenuStrip MDI hedefiyle birleştirilir. Yeni bir form etkin hale geldiğinde birleştirme son formda geri döner ve yeni formda tetiklenir. Bu davranışı, özelliğini her bir üzerinde MergeAction gereken şekilde ayarp her ToolStripItem bir üzerinde özelliğini AllowMerge ayarerek kontrol altına MenuStrip aabilirsiniz.

Ayrıca bkz.