我需要将一个comboBox ValueMember绑定到Object的属性int。
private void setBinds()
{
comboBox.DataBindings.Add("SelectedValue", Employee, "FiscalDocType", true, DataSourceUpdateMode.OnPropertyChanged);
}
员工:
public class Employee
{
public int Id { get; set; }
public int FiscalDocType { get; set; }
public string FiscalDoc { get; set; }
}
DataSource集合:
comboBox.DisplayMember = "DisplayMember";
comboBox.ValueMember = "ValueMember";
comboBox.DataSource = listOfCombo //Type: List<ComboModel>;
ComboModel:
public class ComboModel
{
public int ValueMember { get; set; }
public string DisplayMember { get; set; }
public override string ToString()
{
return DisplayMember;
}
}
当组合更改的值不将ValueMember保存到bind属性时。此外,comboBox不会失去焦点。
如果我尝试将SelectedValue转换为int,则返回转换错误类型。
int integer = (int)SelectedValue;
int integer2 = Convert.ToInt32(SelectedValue);
int integer3 = int.Parse(SelectedValue.ToString());
任何选项都有效。
可以帮帮我吗?