在表单加载时,我将枚举加载到组合框
private void Form2_Load(object sender, EventArgs e)
{
List<VATMode> vatModes = Enum.GetValues(typeof(VATMode)).
Cast<VATMode>().ToList();
cmbVatMode.DataSource = vatModes;
}
现在我想将cmbVatMode
(下拉列表)中的值分配给我的枚举属性MyCustomVatMode
我尝试使用MyCustomVatMode = cmbVatMode.SelectedValue;
,但它无效。
答案 0 :(得分:1)
如果您将DataSource
设置为VATMode
列表,SelectedValue
将返回对象类型的引用。可以成功地输入你的枚举。下一代码演示了这一点
VATMode MyCustomVatMode = (VATMode)cmbVatMode.SelectedValue;
例如,每次更改组合框时,下一个代码将打印到控制台枚举:
cmbVatMode.SelectedValueChanged += (s, a) =>
{
VATMode selected = (VATMode)cmbVatMode.SelectedValue;
Console.WriteLine(selected);
};