一般的情况下,如果下拉框的选项的文字太长,下拉框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. linux常用文件

    /etc/redhat-release /etc/hostname /etc/ssh/sshd_config /proc/meminfo /etc/issue 查看系统版本号 /etc/rc.d/rc ...

  2. 前端HTML目录

    前端 HTML 简介 前端 HTML文档结构介绍 前端 HTML文档 详解 前端 HTML 注释 前端 HTML标签介绍 前端 HTML的规范 前端 HTML 常用标签 head标签相关内容 前端 H ...

  3. AppState使用

    AppState使用 import React, { Component } from 'react'; import {AppRegistry,StyleSheet,Text,View,AppSta ...

  4. UnicodeDecodeError异常

    UnicodeDecodeError异常 UnicodeDecodeError: 'utf8' codec can't decode byte 0xb2 in position 154: invali ...

  5. wx 文件编辑框

    # -*- coding: utf- -*- import wx import os class my_frame(wx.Frame): """This is a sim ...

  6. vue中让input框自动聚焦

    created(){ this.changfouce(); }, methods: { //在vue生命周期的created()钩子函数进行的DOM操作要放在Vue.nextTick()的回调函数中, ...

  7. vue-自定义pc端软键盘

    <template> <div> <el-input v-model="money" type="textarea" placeh ...

  8. [dj]django常用设置

    关于django版本说明: Django 1.11.x 支持 Python 2.7, 3.4, 3.5 和 3.6(长期支持版本 LTS) 最后一个支持 Python 2.7 的版本 Django 2 ...

  9. 安装OpenSSL中出现的问题及解决

    1.报错:install-record.txt --single-version-externally-managed --compile" failed with error code 1 ...

  10. 数据分析与挖掘 - R语言:贝叶斯分类算法(案例三)

    案例三比较简单,不需要自己写公式算法,使用了R自带的naiveBayes函数. 代码如下: > library(e1071)> classifier<-naiveBayes(iris ...