温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C#中ListBox如何实现Item项显示多行

发布时间:2021-11-19 10:42:22 来源:亿速云 阅读:369 作者:小新 栏目:编程语言

这篇文章给大家分享的是有关C#中ListBox如何实现Item项显示多行的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

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项显示多行”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI