【问题标题】:windows form combobox drawmode empty listwindows窗体组合框drawmode空列表
【发布时间】:2017-03-03 01:48:34
【问题描述】:

我有一个组合框设置为下拉列表。我希望该框具有与灰色相对的白色背景,因此我将 DrawMode 设置为 OwnerDrawFixed。
使用该设置,组合框的样式正确,但下拉列表现在为空。 前景色设置为黑色,是什么原因造成的?

【问题讨论】:

  • DrawMode.OwnerDrawFixed 表示想要绘制这些项目。订阅DrawItem 事件并自己绘制或找到另一种方法来设置正确的颜色。设置DrawMode 对我来说似乎只调整颜色是错误的。但我不知道,因为您没有显示或告诉您需要更改外观的哪些部分以“匹配其他框的颜色”。
  • @RenéVogt 是对的。您可以找到如何绘制项目的示例,例如here

标签: c# winforms visual-studio


【解决方案1】:

你需要自己画这个:

listBox.DrawMode = DrawMode.OwnerDrawFixed;
listBox.DrawItem += new DrawItemEventHandler(listBoxEvent);

private void listBoxEvent(object sender, 
System.Windows.Forms.DrawItemEventArgs e)
{
    // Draw the background of the ListBox control for each item.
    e.DrawBackground();
}

这是最低限度。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-27
    相关资源
    最近更新 更多