我只想获得“描述”的选定值。 ListBox加载好,选中,但没有得到值。出现错误:“无法将类型为Customer的对象强制转换为'System.Data.DataRowView'
List<Customers> lstToLoad = new List<Customers>();
public class Customers
{
public string Descr { get;set; }
public int AccNum { get; set; }
}
DataSet ds = LoadAvailCustomers();
foreach (DataRow dr in ds.Tables[0].Rows)
{
lstToLoad .Add(new Customers{Descr = dr["Descr"].ToString(),AccNum = (int)dr["AccNum"]});
}
List1.DisplayMember = "Descr";
List1.ValueMember = "AccNum";
List1.DataSource = lstToLoad ;
List1.SelectedIndex = 0;
List1.Select();
string strSelected = ((DataRowView)List1.SelectedItem)["Descr"].ToString(); <<<--error here
如果我加载List1旧的时尚方式没有集合和类,没有问题来获取所选项目。感谢你的帮助!
string strSelected = List1.SelectedItem.ToString();
答案 0 :(得分:1)
string strSelected = ((Customers)List1.SelectedItem).Descr;
请注意,您要将Customers
个对象添加到列表而不是DataRow
s