gpt4 book ai didi

c# - 如何使 ComboBox 下拉列表调整自身大小以适应最大的项目?

转载 作者:行者123 更新时间:2023-12-04 02:00:42 24 4
gpt4 key购买 nike

我有一个 DataGridView 和一个 ComboBox 可能包含一些非常大的字符串。有没有办法让下拉列表自行展开或至少对字符串进行自动换行,以便用户可以看到整个字符串而不必调整 ComboBox 列宽?

最佳答案

这是非常优雅的解决方案:

private void AdjustWidthComboBox_DropDown(object sender, System.EventArgs e)
{
ComboBox senderComboBox = (ComboBox)sender;
int width = senderComboBox.DropDownWidth;
Graphics g = senderComboBox.CreateGraphics();
Font font = senderComboBox.Font;
int vertScrollBarWidth =
(senderComboBox.Items.Count>senderComboBox.MaxDropDownItems)
?SystemInformation.VerticalScrollBarWidth:0;

int newWidth;
foreach (string s in senderComboBox.Items)
{
newWidth = (int) g.MeasureString(s, font).Width
+ vertScrollBarWidth;
if (width < newWidth )
{
width = newWidth;
}
}
senderComboBox.DropDownWidth = width;
}

调整组合框下拉列表宽度为最长字符串宽度 http://www.codeproject.com/KB/combobox/ComboBoxAutoWidth.aspx

来源:
Calculating ComboBox DropDownWidth in C#

关于c# - 如何使 ComboBox 下拉列表调整自身大小以适应最大的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4448509/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com