来自stackoverflow的答案看起来很有希望,但还没有运气。此外,我可能还没有足够的经验可以看到它。
简单我想:我在ToolStripDropDownButton中寻找一个更大的下拉箭头作为集合中的项目。工具条下拉按钮非常小。我希望它是当前尺寸的3倍。略大也会带来好处。选中下拉菜单后会显示一个项目菜单。
是否可以使用ToolStripRenderer或用户控件来获得所需(除非有一个我看不到的属性)或??我对Winforms环境中的自定义控件并不熟悉,因此任何有关片段或方向的帮助都会有所帮助。换句话说,想知道,如果需要用户控件,我需要做些什么来使它适用于这种情况?也就是说,我正在寻找任何可行的解决方案。感谢您的任何帮助/想法!!!!
答案 0 :(得分:2)
尝试制作自己的渲染器并覆盖OnRenderArrow方法:
public class MyRenderer : ToolStripProfessionalRenderer {
protected override void OnRenderArrow(ToolStripArrowRenderEventArgs e) {
if (e.Item.GetType() == typeof(ToolStripDropDownButton)) {
Rectangle r = e.ArrowRectangle;
List<Point> points = new List<Point>();
points.Add(new Point(r.Left - 2, r.Height / 2 - 3));
points.Add(new Point(r.Right + 2, r.Height / 2 - 3));
points.Add(new Point(r.Left + (r.Width / 2),
r.Height / 2 + 3));
e.Graphics.SmoothingMode = SmoothingMode.AntiAlias;
e.Graphics.FillPolygon(Brushes.Black, points.ToArray());
} else {
base.OnRenderArrow(e);
}
}
}
然后将其应用于ToolStrip:
toolStrip1.Renderer = new MyRenderer();
您可能需要将按钮的AutoSize属性更改为false,并自行设置按钮的宽度以获得适当的空间。
答案 1 :(得分:1)
您可以通过将AutoSize
属性设置为false来更改按钮的大小,然后将Size
属性设置为您需要的属性。至于使箭头更大,我不认为你可以做到这一点,但至少它会使按钮更大。