Windows Forms の ComboBox コントロールでは、ドロップダウンリストの右側にある「▼」のボタンの横幅を直接変更することは基本的にできません。これは、Windows Forms のデザインによる制限で、プロパティを変更するだけではこの部分のスタイルを変えることは難しいです。
カスタム描画やカスタムコントロールを使用することで実現可能かもしれません。
具体的には、ComboBox を継承した新しいクラスを作成し、その中で描画メソッドをオーバーライドして、ボタン部分の描画を自分で制御すればいいのです。
C#
1public class CustomComboBox : ComboBox
2{
3 protected override void OnPaint(PaintEventArgs e)
4 {
5 base.OnPaint(e);
6
7 // ボタン部分の描画
8 int buttonWidth = 30; // ここでボタンの横幅を指定
9 Rectangle buttonRect = new Rectangle(this.Width - buttonWidth, 0, buttonWidth, this.Height);
10 ControlPaint.DrawButton(e.Graphics, buttonRect, ButtonState.Normal);
11
12 // ボタン上の下矢印の描画
13 Point arrowPoint = new Point(this.Width - buttonWidth / 2, this.Height / 2);
14 ControlPaint.DrawScrollButton(e.Graphics, arrowPoint.X, arrowPoint.Y, buttonWidth, ButtonState.Normal, ScrollButton.Down);
15 }
16}
17
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/07/21 06:41
2023/07/21 07:04
2023/07/21 08:07