ToolStripComboBox - アイテムに自動化します
-
02-10-2019 - |
質問
ToolStripComboBoxコントロールを備えたツールストリップがあり、ドロップダウンリストに最も広いアイテムを適合させるために自動化することをお勧めします。どうすればそれを達成できますか? 「自動化」プロパティは「真」に設定されていますが、違いはないようです。私はしばらくの間、これを頭にぶつけてきました。それも可能ですか?
解決
このMSDNの記事によると プロパティの概要を自動化します 一部のコントロールのみが自動化プロパティをサポートしています。コンボボックスには自動化サポートがありません。
他のヒント
同じ問題がありました。私の解決策は、ドロップダウンイベントのサイズを変更することでした。測定値で最大幅を渡すか、ドロップダウン幅を設定する前に最大幅を自分でクランプすることができます。
private void m_comboBox_DropDown(object sender, EventArgs e)
{
using (System.Drawing.Graphics graphics = CreateGraphics())
{
int maxWidth = 0;
foreach (object obj in m_comboBox.Items)
{
System.Drawing.SizeF area = graphics.MeasureString(obj.ToString(), m_comboBox.Font);
maxWidth = Math.Max((int)area.Width, maxWidth);
}
m_comboBox.DropDownWidth = maxWidth;
}
}
所属していません StackOverflow