comboBox显示问题
comboBox1的数据从数据库中加载过来,但显示出来的数据的行距太小了,还有字体也小,有没有办法解决它啊?DropDownstyle 设置为 DropDownList --------------------编程问答-------------------- 字体可以通过设置comobox的font属性来设定。
显示出来的数据行距太小。。。这个不太明白,是指comobox的item之间的距离变小了么? --------------------编程问答-------------------- 就是说显示的时候,每一行都挤在一起,密密麻麻的,很难看!
c# WinForm的这个控件我找了半天了,也找不出哪个属性可以设置设置行距的大小。 --------------------编程问答-------------------- 这个行间距应该是固定的,不应该挤在一起呀,能不能截个图看看? --------------------编程问答-------------------- combox的行距?
--------------------编程问答-------------------- 比喻显示一个部门:
现显示现来的结果是:
部门1
部门2
部门3
部门4
我想这样显示:
部门1
部门2
部门3
部门4
--------------------编程问答-------------------- 要实现这样的效果 如果是web实现倒很容易
winform么 那么LZ只有在数据源中插入空值了
让空值代替你的换行 也就是部门1 null 部门2 null 部门3... --------------------编程问答-------------------- 哦,有些明白了,不过
部门1
部门2
部门3
部门4
这个应该是正常的显示,如果你一定要
部门1
部门2
部门3
部门4
这样显示的话,估计只能自己加空行了。
也就是在给combobox的Items赋值的时候
部门一
(空行)
部门二
空行
。。。。。
这样赋值的话应该就可以实现你说的效果了。 --------------------编程问答--------------------
似乎就是这样了 --------------------编程问答--------------------
楼上可能理解错了,我的意思是显示
部门1 和 部门2 之间要有点空隙,这个空隙的高度可以设置,而不是插入一个空行。
--------------------编程问答-------------------- line-height? --------------------编程问答-------------------- 學習了。 --------------------编程问答-------------------- 找找属性,看看设置一下应该可以的 --------------------编程问答-------------------- 没有这个属性 --------------------编程问答-------------------- 没有这个,如果你想的话,你最好用个有图标的那个combox.你可以选择一个白色的图标放在那里。这个需要自己解决。属性没有这项功能。 --------------------编程问答-------------------- C#的combox有itemheight高度,感觉这个可以! --------------------编程问答-------------------- 属性的话应该是没有的,如果一定要这么做,估计就得自定义了控件了。 --------------------编程问答-------------------- 看来微软是故意这样做的,
一个控件连最简的行距功能都没有。真晕啊! --------------------编程问答-------------------- 行间距 字体什么的 可以自己在控件的属性里面自己设置啊
--------------------编程问答-------------------- 行间距 如何设置,请指点123,多谢! --------------------编程问答-------------------- comboBox 控件却实有个 ItemHeight 但默认值为12,这个数据不能修改啊!
改了后又变成为12!
真晕啊! --------------------编程问答--------------------
this.comboBox2.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
this.comboBox2.DrawItem += new System.Windows.Forms.DrawItemEventHandler(comboBox2_DrawItem);
void comboBox2_DrawItem(object sender, System.Windows.Forms.DrawItemEventArgs e)
{
if (e.Index>=0)
{
Font _font = new Font("宋体", 10);
StringFormat _strfrmat = new StringFormat();
_strfrmat.Alignment = StringAlignment.Near;
_strfrmat.LineAlignment = StringAlignment.Center;
//根据不同的状态用不同的颜色表示
if (e.State == (System.Windows.Forms.DrawItemState.NoAccelerator | System.Windows.Forms.DrawItemState.NoFocusRect))
{
e.Graphics.FillRectangle(new System.Drawing.SolidBrush(Color.White), e.Bounds);
e.Graphics.DrawString(comboBox2.Items[e.Index].ToString(), _font, new System.Drawing.SolidBrush(Color.Black), e.Bounds, _strfrmat);
e.DrawFocusRectangle();
}
else
{
e.Graphics.FillRectangle(new SolidBrush(Color.LightBlue), e.Bounds);
e.Graphics.DrawString(comboBox2.Items[e.Index].ToString(), _font, new SolidBrush(Color.Blue), e.Bounds, _strfrmat);
e.DrawFocusRectangle();
}
}
}
补充:.NET技术 , C#