一般的情况下,如果下拉框的选项的文字太长,下拉框ComboBox的Width宽度属性我们又不想要改变(默认不变),下拉选项的文字内容就会被截剪,如下图所示:

解决办法:

1、自动判断下拉选项的文字长度。

2、根据文字长度来设置下拉框的下拉部门的宽度DropDownWidth。

namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent(); //comboBox1.Items.Add("China_我是中国人民共和国_China");
//comboBox1.Items.Add("我是人民");
var p = new { Name = "China_我是中国人民共和国_China" };
var p2 = new { Name = "我是人民" };
List<object> list = new List<object>();
list.Add(p);
list.Add(p2);
comboBox1.DisplayMember = "Name";
comboBox1.DataSource = list; // 测量出最大的字符大小
int maxSize = ;
System.Drawing.Graphics g = CreateGraphics();
for (int i = ; i < comboBox1.Items.Count; i++)
{
comboBox1.SelectedIndex = i;
SizeF size = g.MeasureString(comboBox1.Text, comboBox1.Font);
if (maxSize < (int)size.Width)
{
maxSize = (int)size.Width;
}
}
comboBox1.DropDownWidth = comboBox1.Width;
if (comboBox1.DropDownWidth < maxSize)
{
comboBox1.DropDownWidth = maxSize;
//comboBox1.Width = maxSize;
}
comboBox1.SelectedIndex = ;
}
}
}

转:控制ComboBox下拉框的下拉部分宽度,使内容能够显示完全的更多相关文章

  1. 使用jQuery为文本框、单选框、多选框、下拉框、下拉多选框设值及返回值的处理

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  2. easyui的combobox下拉框初始化默认值以及保持该值一直显示的方法

    easyui的combobox下拉框默认初始值是空,下面是实现从远程加载数据之后初始化默认值,以及让该值一直排在下拉框的最顶部的方式. 目前的需求是需要在初始化的时候添加"全部数据库&quo ...

  3. 下拉框、下拉控件之Select2。自动补全的使用

    参考链接: 参考一:https://blog.csdn.net/weixin_36146275/article/details/79336158 参考二:https://www.cnblogs.com ...

  4. select下拉框可以直接取list里的内容 不用非得转map (不得不承认我是个ZZ,这么简单的问题才反应过来,--^--)

    需求描述:select下拉框的填充项,从后台传来的list中获取 自黑一下:之前有篇随笔,写的是通过map传到前台,在前台的select中的value属性取值 用map的key,而select的tex ...

  5. 修改select下拉框的下拉按钮

    ie上的下拉框下拉按钮真是太丑了,如何把他自定义一下呢? 首先,把浏览器自带的下拉框去掉:  select::-ms-expand { display: none; } 接下来,用自己喜欢的下拉图片去 ...

  6. mysql导入导出数据中文乱码解决方法小结(1、navicat导入问题已解决,创建连接后修改连接属性,选择高级->将使用Mysql字符集复选框去掉,下拉框选择GBK->导入sql文件OK;2、phpmyadmin显示乱码的问题也解决,两步:1.将sql文件以utf8的字符集编码另存,2.将文件中sql语句中的字段字符集编码改成utf8,导入OK)

    当向 MySQL 数据库插入一条带有中文的数据形如 insert into employee values(null,'张三','female','1995-10-08','2015-11-12',' ...

  7. 下拉框、下拉控件之Select2

    一.Select2的功能简介 select2插件给我们带来了更加友好的交互方式,比如查询控件展开后可通过关键字进行检索 例如: Select2也可以选择带查询控件的选择框... Select2也可以选 ...

  8. select下拉框获取下拉项值的问题

    新发现: select option如果里面不写value值,默认提交<option></option>中间的值. 切记:真正提交的值写在value属性里面,option之间只 ...

  9. WPF AutoGeneratingColumn 绑定下拉框

    WPF自动产生列,前台代码: <DataGrid x:Name="Dg" AutoGenerateColumns="True" CanUserAddRow ...

随机推荐

  1. 【SQL】from a,b。表a 和b之间是什么关系?

    1.select a.id from a,b……——>这里a和b用逗号隔开,a,b之间默认是inner join的关系.

  2. MongoDB的客户端管理工具--nosqlbooster 查询工具使用

    连接我的MongoDB 看到这样 打开db1数据库里面user集合,看到user集合里面的数据,他会自带查询语句 看这里以tree方式显示 可以以table方式显示 还可以json方式显示 按照自己的 ...

  3. 循环打印视图(学习WHILE循环)

    ) --视图名 --总视图数 --循环次数 SELECT @RowCount = COUNT(NAME) FROM sysobjects WHERE xtype = 'v' WHILE @i < ...

  4. shell编程awk基础介绍

    awk介绍 报告生成器,格式化文本输出 处理机制类似sed命令,自带循环处理    读入一行处理一行然后自动读取下一行再进行处理 sed命令换行的标识是固定的,只能是回车换行.    awk里面的换行 ...

  5. wx:Textctrl

    import wx class Mywin(wx.Frame): def __init__(self, parent, title): super(Mywin, self).__init__(pare ...

  6. UE4程序及资源加密保护方案

    UnrealEngine4外壳加密 . Virbox Protector 解决代码反汇编和反dump代码,解决软件盗版与算法抄袭. 虚幻引擎4是由游戏开发者为开发游戏而制作的.完整的游戏开发工具套件. ...

  7. 十步完全理解SQL(转载)

    1. SQL 是一种声明式语言 首先要把这个概念记在脑中:“声明”. SQL 语言是为计算机声明了一个你想从原始数据中获得什么样的结果的一个范例,而不是告诉计算机如何能够得到结果.这是不是很棒? (译 ...

  8. MRJob 极速入门教程,使用Python玩转Hadoop

    想要Hadoop乖巧地运行Python程序,学习mrjob可能是最直接.最简单的方法了,你甚至都不要按安装部署Hadoop集群.mrjob拥有很多优秀的特性比如: 支持多步骤的MapReduce任务工 ...

  9. 详解Laravel的目录结构

    Models 目录在哪里? 许多初学者可能都会困惑 Laravel 为什么没有提供 models 目录,官方解释说是因为不同人对 models 这个词的含义看法不同,容易造成歧义,有些开发者认为应用的 ...

  10. 20165321实验一 Java开发环境的熟悉

    一.idea调试: 二.实验内容: 实现学生成绩管理功能(增删改,排序,查找),并进行测试(正常情况,异常情况,边界情况). 运行截图: 代码: public class Student { Stri ...