当前位置:编程学习 > C#/ASP.NET >>

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赋值的时候
部门一
(空行)
部门二
空行
。。。。。
这样赋值的话应该就可以实现你说的效果了。 --------------------编程问答--------------------
引用 7 楼 qingfengbj 的回复:
哦,有些明白了,不过
部门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#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,