外観を変更するために取り組んでいる大規模な winform アプリケーションがあります。System.Windows.Forms.Toolbar を System.Windows.Forms.ToolStrip コントロールに置き換えています。カスタム レンダラーを使用して、ドロップダウンの矢印の色を変更します。デフォルトのレンダラーでは、ツールストリップでマウス ホバー効果が得られますが、カスタム レンダリングでは機能しないようです。これが私のコードです。
ツールストリップの初期化: 読みやすさのために不要なコードを削除しました
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
this.imageList1 = new System.Windows.Forms.ImageList(this.components);
this.toolStripDropDownButton1 = new System.Windows.Forms.ToolStripDropDownButton();
this.toolStrip1.ImageList = this.imageList1;
this.toolStrip1.ImageScalingSize = new System.Drawing.Size(55, 32);
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripDropDownButton1
});
this.toolStrip1.Renderer = new MyRenderer();
ツールストリップのドロップダウン ボタン:
this.toolStripDropDownButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Image;
this.toolStripDropDownButton1.ImageIndex = 0;
this.toolStripDropDownButton1.Name = "toolStripDropDownButton1";
カスタムレンダラー
public class MyRenderer : ToolStripRenderer
{
protected override void OnRenderArrow(ToolStripArrowRenderEventArgs e)
{
e.ArrowColor = Color.White;
base.OnRenderArrow(e);
}
}