foreach (TableContainer table in listOpenUnjoinedTables)
{
var item = new Label();
item.MouseEnter += item_MouseEnter;
item.MouseLeave += item_MouseLeave;
if (table.IsVirtual == false)
{
item.Content = "[" + table.TableDescription + "]";
}
else
{
item.Content = "[" + table.View.Name + "]";
}
item.Tag = table;
cmb.Items.Add(item);
if (item.ActualWidth > largestWidth)
{
largestWidth = item.ActualWidth;
}
}
if (largestWidth != 0)
{
foreach (Label label in cmb.Items)
{
label.Width = largestWidth;
}
}
}
ComboBox があり、ComboBoxItems の代わりにラベルを追加しています。ラベルがドロップダウン リストのスペース全体を埋めるようにしたいと思います。上記のコードを作成しようとしていますが、ラベルの幅が常に 0 として返されるため、コードが機能しません。
どうすればこれを達成できますか? ComboBox の項目 (ラベル) でドロップダウン リストの幅全体を埋めたいと思います。