C# 中 comboxBox的宽度的相关问题

 Graphics g = null;
            Font font = null;
            try
            {
                int width = comboBox_jpgName.Width;     //comboBox_jpgName是控件名字
                font = comboBox_jpgName.Font;
                g = comboBox_jpgName.CreateGraphics();
                int vertScrollBarWidth = (comboBox_jpgName.Items.Count > comboBox_jpgName.MaxDropDownItems) ?  SystemInformation.VerticalScrollBarWidth : 0;
                int newWidth;
                foreach (object s in comboBox_jpgName.Items)  
                {
                    if (s != null)
                    {
                        newWidth = (int)g.MeasureString(s.ToString().Trim(), font).Width
                            + vertScrollBarWidth;
                        if (width < newWidth)
                            width = newWidth;   //将下拉列表的宽度设置为最大项目的宽度。
                        if (comboBox_jpgName.Text.ToString().Equals(s.ToString()))
                            comboBox_jpgName.Width = newWidth+20;//当前选中为宽度为控件宽度
                    }
                    
                }
                
                comboBox_jpgName.DropDownWidth = width;//将下拉列表的宽度设置为最大项目的宽度
            }
            catch
            { }
            finally
            {
                if (g != null)
                    g.Dispose();

            }



参考:http://blog.csdn.net/ccy3253/article/details/2067304

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值