我已经获得了商品密钥(保险类别)的价值。但是,我似乎无法把它归还给保险类别。我如何将其分配到保险类别?我需要这个,以便我保存/添加新的保险条目。
请举例说明如何将其分配到保险类别。
请检查下面的代码:
List<Value> lsValue = oInsurance.Category.ValueList;
foreach (Value item in lstValue)
{
if (item.Key.ToString() == drpCategory.SelectedValue)
{
oInsurance.Category.value = item.Key;// error here
}
}
下拉列表代码:
private void InsuranceCategorySource() {
DataSet ds = new DataSet();
DataTable dt = ds.Tables.Add("Source");
dt.Columns.Add("ID", Type.GetType("System.String"));
dt.Columns.Add("Desc", Type.GetType("System.String"));
Insurance oInsurance = new Insurance();
List<Value> lstValue = oInsurance.Category.ValueList;
foreach (Value item in lstValue)
{
DataRow dr = dt.NewRow();
dr[0] = item.Key.ToString();
dr[1] = item.Value.ToString();
dt.Rows.Add(dr);
}
drpCategory.DataSource = ds;
drpCategory.DataMember = "Source";
drpCategory.DataTextField = "Desc";
drpCategory.DataValueField = "ID";
drpCategory.DataBind();
}
谢谢!
答案 0 :(得分:1)
如果您将下拉列表的DisplayMember
设置为值,并将下拉列表的ValueMember
设置为密钥,则建议使用此选项。
如果您正确设置了列表的DisplayMember
和ValueMember
,那么您的代码就可以使用。
由于您正在使用ASP.NET属性进行正确设置,因此ASP.NET中的DataTextField和DataValueField
答案 1 :(得分:1)
如果我弄错了,请纠正我。您首先检查他们是否按下选定的下拉列表值,然后根据您尝试将其“值”输入保险类别?
if (item.Key.ToString() == drpCategory.SelectedValue) //Check
{
oInsurance.Category.value = item.Value;
// I think it should be value
//instead of key which will be of type String.
}