|
和Web程序的ListBox(以后简称LB)控件相比,Form程序的LB控件的Items成员更加抽象:是object的集合。Web LB的Items成员有Value和Text两个属性,前者适合显示对象数据的ID,后者显示名称。
而Form LB的Items是object,并不能直接取到Value和Text。其实这里的用法更加灵活。
首先,Form LB是这样绑定数据的:
ListBoxProj.DataSource = dt_proj; ListBoxProj.ValueMember = "Id"; ListBoxProj.DisplayMember = "ProjName";
dt_proj是一个DataTable,后面两个是Column的名称。
实际上Form LB的Items成员对应的就是dt_proj的每个DataRow,我们这样就可以获取Items每个成员的“Value”和“Text”:
DataRowView drv = (DataRowView) ListBoxProj.Items[0]; string str_Id = drv["Id"].ToString(); string str_Name = drv["ProjName"].ToString();
也就是说,我们用什么类型的数据源绑定LB,就可以原样取出来。
|