2011-09-05 12 views
7

C# masaüstü uygulaması üzerinde çalışıyorum. Ben bir drop down button kullandım bir menu strips control kullanıyorum.ToolStripDropdown düğmesinin boyutunu, ana açılır düğmenin boyutuna uyacak şekilde nasıl yapılandırabilirsiniz?

Açılan tıklatıldığında, öğeler görüntülenir, ancak Açılır Menü Genişliği sorunu görünüyor, her zaman daha büyüktür. Düğmeninkiyle aynı boyda olmasını istiyorum.

Screenshot

Ben yapılandırmak için mücadele ediyorum Ne:

  1. Ben DropDown genişliği düğmesi ile aynı olmasını istediğiniz İşte

    bir görüntü var.
  2. Açılır menü ok daha büyük olmalıdır.
  3. Düğme düz değil, kıvrımlı olmalı, bir ToolStripDropdown düğmesi.
+0

sen wpf, silverlight, Win ya bahsediyoruz ...? – WaltiD

+0

AutoSize == doğru mu? – Blau

+2

Bu menü şeridinde uygun bir kontrol değildir. ToolStrip üzerinde kullanılmak üzere tasarlanmıştır. Ve otomatik olarak kendini takım şeridi yüksekliğine göre boyutlandırır. Bir menü şeridinde sabit bir boyu olacak, çünkü yüksekliğini değiştiremezsiniz, Yazı tipi boyutu tarafından önceden ayarlanmıştır. –

cevap

1

Maalesef bu denetim için tahıl karşı olacak ve kendi kontrolleri veya özel boyama başvurmak gerekir tam olarak istediğini al.

Özel boyama kullanarak açılır okun şeklini/boyutunu değiştirebilmeniz gerekir. Denetimi geçersiz kılarak açılır menünün boyutunu kısıtlayabilmeniz gerekir. Ancak, açılır menüde, keneler ve kısayol dizeleri için yer olduğundan, beklediğinizden daha fazla iş yapmanız gerekebilir. http://connect.microsoft.com/VisualStudio/feedback/details/97456/owner-drawn-toolstripcombobox

Bu keyfi kontrolleri barındırmak için ToolStripControlHost (kontrol) kullanarak önerir: Burada

yardımcı olabilecek göstergelerinin bir çift. basit bir örnek ile : http://alala666888.wordpress.com/2010/07/15/custom-toolstripitem/

http://www.codeproject.com/KB/static/DropDownContainer.aspx (VB.Net'te olsa) Bu proje aynı şeyi yapmak için kendi denetimleri yazma ile sorunların çoğu gösterir.

yazma ToolStripRenderers ilgili bu madde de bulunmaktadır: http://www.codeproject.com/KB/menus/CustomToolStripRenderer.aspx

Burada özel denetim başka C# tabanlı örnek: http://www.codeproject.com/KB/selection/office2003colorpicker.aspx

İlgili konular