C# toolStripComboBox设置字体样式?

C# toolStripComboBox设置字体样式?,c#,.net,toolstrip,C#,.net,Toolstrip,我使用comboBox阅读此主题,但toolstripComboBox中不存在事件draw\u项 我需要你的帮助。我正在用C#编写简单的写字板。这是因为ToolStripComboBox派生自ToolStripControlHost,而不是ComboBox。您需要使用它的控件属性来访问组合框。像这样: public partial class Form1 : Form { public Form1() { InitializeComponent(); Co

我使用comboBox阅读此主题,但toolstripComboBox中不存在事件draw\u项
我需要你的帮助。我正在用C#编写简单的写字板。

这是因为ToolStripComboBox派生自ToolStripControlHost,而不是ComboBox。您需要使用它的控件属性来访问组合框。像这样:

public partial class Form1 : Form {
    public Form1() {
        InitializeComponent();
        ComboBox box = (ComboBox)toolStripComboBox1.Control;
        box.DrawMode = DrawMode.OwnerDrawVariable;
        box.MeasureItem += new MeasureItemEventHandler(box_MeasureItem);
        box.DrawItem += new DrawItemEventHandler(box_DrawItem);
    }

    void box_DrawItem(object sender, DrawItemEventArgs e) {
        // etc..
    }

    void box_MeasureItem(object sender, MeasureItemEventArgs e) {
        // etc..

    }
}

用测量和绘制字体名称所需的代码填充事件处理程序,并使用它们自己的字体样式。

这是因为ToolStripComboBox派生自ToolStripControlHost,而不是ComboBox。您需要使用它的控件属性来访问组合框。像这样:

public partial class Form1 : Form {
    public Form1() {
        InitializeComponent();
        ComboBox box = (ComboBox)toolStripComboBox1.Control;
        box.DrawMode = DrawMode.OwnerDrawVariable;
        box.MeasureItem += new MeasureItemEventHandler(box_MeasureItem);
        box.DrawItem += new DrawItemEventHandler(box_DrawItem);
    }

    void box_DrawItem(object sender, DrawItemEventArgs e) {
        // etc..
    }

    void box_MeasureItem(object sender, MeasureItemEventArgs e) {
        // etc..

    }
}
在事件处理程序中填入您需要测量的代码,并以自己的字体样式绘制字体名称。

如果使用WinForms,则有DrawItem如果使用WinForms,则有DrawItem