c#中如何设置listbox各选项中的字体

像这样... 像这样 展开
 我来答
Damon_lan
2015-05-10 · TA获得超过2054个赞
知道小有建树答主
回答量:415
采纳率:0%
帮助的人:178万
展开全部

不确定你是用winform 还是web。。我是用winform做出来的!!

1.在load 加载初始数据!


private void Form2_Load(object sender, EventArgs e)
        {
            listBox1.Items.Add("常规");
            listBox1.Items.Add("斜体");
            listBox1.Items.Add("粗体");
            listBox1.Items.Add("粗体斜体");
            //这句话很关键关键,如果没这句,那么DrawItem是不生效的
            listBox1.DrawMode = DrawMode.OwnerDrawFixed;
        }

2.实现DrawItem事件。。

private void listBox1_DrawItem(object sender, DrawItemEventArgs e)
        {
            e.DrawBackground();
            if (e.Index > -1)
            {
                Font f = null;
                switch (e.Index)
                {
                    case 0:
                        f = new Font("宋体", 9, FontStyle.Regular);
                        e.Graphics.DrawString(Convert.ToString(listBox1.Items[e.Index]), f, Brushes.Red, e.Bounds);
                        break;
                    case 1:
                        f = new Font("宋体", 9, FontStyle.Italic);
                        e.Graphics.DrawString(Convert.ToString(listBox1.Items[e.Index]), f, Brushes.Yellow, e.Bounds);
                        break;
                    case 2:
                        f = new Font("宋体", 9, FontStyle.Bold);
                        e.Graphics.DrawString(Convert.ToString(listBox1.Items[e.Index]), f, Brushes.SteelBlue, e.Bounds);
                        break;
                    case 3:
                        f = new Font("宋体", 9, FontStyle.Italic | FontStyle.Bold);
                        e.Graphics.DrawString(Convert.ToString(listBox1.Items[e.Index]), f, Brushes.Gray, e.Bounds);
                        break;
                }
            }
        }

3.最终效果如下:


这个花了我些时间,希望对你有帮助,有问题可以在讨论,加油!!!

百度网友ce7f3ccb4
2015-05-09 · TA获得超过1950个赞
知道大有可为答主
回答量:2299
采纳率:0%
帮助的人:1890万
展开全部
不能!!,除非你重绘!!
追问
  • 那怎么重绘呢

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2015-05-10 · TA获得超过1134个赞
知道小有建树答主
回答量:742
采纳率:73%
帮助的人:418万
展开全部
你是说选中的项变换字体吗? 那个貌似只有自己画
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式