我正在研究C#桌面应用程序。我正在使用menu strips control
,其中我使用了drop down button
。如何配置ToolStripDropdownbutton大小以匹配父级下拉按钮的大小?
每当单击下拉菜单时,它会显示项目,但下拉菜单的宽度似乎是问题,它总是更大。我希望它与按钮的尺寸相同。
下面是截图:
什么我奋力配置:
- 我想下拉的宽度是相同按钮。
- 下拉箭头应该更大。
- 该按钮应该是弯曲的,而不是平面样式,它是一个ToolStripDropdownbutton。
我正在研究C#桌面应用程序。我正在使用menu strips control
,其中我使用了drop down button
。如何配置ToolStripDropdownbutton大小以匹配父级下拉按钮的大小?
每当单击下拉菜单时,它会显示项目,但下拉菜单的宽度似乎是问题,它总是更大。我希望它与按钮的尺寸相同。
下面是截图:
什么我奋力配置:
您可以使用ComboBox控件来代替,并将DropDownStyle更改为DropDownList。
如何使用一个按钮,组合框的一些信息可以在这里找到:http://social.msdn.microsoft.com/forums/en-US/winformsdesigner/thread/5d65f987-834c-465f-a944-622831d4cfb0
不幸的是你要对粮食的控制,而且你需要求助于自己的控件或自定义画得到你想要的。
您应该可以使用自定义绘画更改下拉箭头的形状/大小。 您应该可以通过覆盖控件来限制下拉菜单的大小。 但是,由于下拉菜单中有空间可用于刻度和快捷字符串,我怀疑您可能需要做的工作量超出您的预期。
这里有几个指针,你可能会发现有用: http://connect.microsoft.com/VisualStudio/feedback/details/97456/owner-drawn-toolstripcombobox
这表明使用ToolStripControlHost(控制)来承载任意控制。 用一个简单的例子:http://alala666888.wordpress.com/2010/07/15/custom-toolstripitem/
http://www.codeproject.com/KB/static/DropDownContainer.aspx 这个项目(尽管在VB.Net)显示了许多写自己的控件做同样的事情的问题。
也有这篇文章关于编写ToolStripRenderers: http://www.codeproject.com/KB/menus/CustomToolStripRenderer.aspx
这里有一个自定义的控制的另一个基于C#的例子: http://www.codeproject.com/KB/selection/office2003colorpicker.aspx
你说的是WPF,Silverlight中,的WinForms还是...? – WaltiD
AutoSize == true? – Blau
这不是菜单栏中的适当控件。它被设计用于ToolStrip上。它会自动根据工具条高度自动调整大小。它将在菜单条中具有固定的大小,因为您无法更改它的高度,它是由字体大小预设的。 –