C#中ListBox如何实现Item项显示多行
这篇文章给大家分享的是有关C#中ListBox如何实现Item项显示多行的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
麒麟网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、响应式网站等网站项目制作,到程序开发,运营维护。创新互联公司于2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司。
1、首先选中拖至面板的ListBox控件,点属性,选中DrawMode,改成OwnerDrawFixed或OwnerDrawVariable
2、还是在属性工具中,切换到事件(就是那个闪电图标),鼠标双击‘行为’菜单下的DrawItem,添加一个事件。
3、在‘窗体设计器生成的代码’中就添加了一个新的事件
this.listBox1.DrawItem += new System.Windows.Forms.DrawItemEventHandler(this.listBox1_DrawItem);
4、学过的朋友应该知道,这时代码里会有一个 listBox1_DrawItem()的方法,在里面写代码吧。
private void listBox1_DrawItem(object sender, System.Windows.Forms.DrawItemEventArgs e) { e.DrawBackground(); Brush myBrush = Brushes.Black; //初始化字体颜色=黑色 this.listBox1.ItemHeight=90; //设置项高,根据具体需要设置值 //为每个项设置字体颜色 //如果不需要可以不写此switch switch (e.Index) { case 0: myBrush = Brushes.Red; break; case 1: myBrush = Brushes.Orange; break; case 2: myBrush = Brushes.Purple; break; case 4: myBrush = Brushes.White; break; } e.Graphics.DrawString(listBox1.Items[e.Index].ToString(), e.Font, myBrush,e.Bounds,null); //这句好象可以不要,自己试下 e.DrawFocusRectangle(); }
其实,看过MSDN的朋友应该知道了,MSDN里有类似的代码,我不过修改了几个地方,加入了项高this.listBox1.ItemHeight=90,可以输入多行字符,这里要注意的是,整个ListBox的高应该是你设置的Item项高的倍数大一点点,不然ListBox在显示时会有所变形!
感谢各位的阅读!关于“C#中ListBox如何实现Item项显示多行”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
网站标题:C#中ListBox如何实现Item项显示多行
地址分享:http://ybzwz.com/article/pggjoo.html