drop-down list
中有一个项目列表。我想在逐个选择项目的同时在数据表中添加这些项目。如何做到这一点?我在这里给我的代码。
foreach (System.Web.UI.WebControls.DropDownList li in ddlAssignedTo.Items)
{
if (li.SelectedItem ==checked)
{
DataRow drUsers = dtAssigners.NewRow();
drUsers["GIMID"] = GIMID;
drUsers["MODE"] = 'I';
drUsers["UserId"] = Convert.ToInt32(li.SelectedValue);
drUsers["CreatedBy"] = CurUsr.UserId;
dtAssigners.Rows.Add(drUsers);
}
}
我在(li.SelectedItem ==checked)
附近收到错误...任何人都可以帮助我吗?
答案 0 :(得分:0)
示例,如果您的下拉菜单如下:
您想要在表格中添加第一项。你可以这样做:
if (ddl.SelectedValue == "1")
{
//Write Your Code here
}
所有这些条件都可以使用上面的DropDownList
if(ddl.SelectedValue == "1")
if(ddl.SelectedIndex == 0)
if (ddl.SelectedItem.Text == "One";
答案 1 :(得分:0)
您无需在下拉列表中迭代项目以查找所选项目。
var item = ddlAssignedTo.SelectedItem;
if (item != null)
{
DataRow drUsers = dtAssigners.NewRow();
drUsers["GIMID"] = GIMID;
drUsers["MODE"] = 'I';
drUsers["UserId"] = Convert.ToInt32(item.Value);
drUsers["CreatedBy"] = CurUsr.UserId;
dtAssigners.Rows.Add(drUsers);
}
编辑:好的,如果选择了多个项目,您可以尝试这个 -
foreach (ListItem item in ddlAssignedTo.Items)
{
if (item.Selected)
{
}
}
编辑2:如果您的下拉列表中有复选框,则您最有可能使用checkboxlist
控件。
以下代码适用于我。请比较一下如何设置数据表。
DataTable dt = new DataTable("table1");
dt.Columns.Add("col1");
foreach(ListItem item in CheckBoxList1.Items)
{
if (item.Selected)
{
names.Add(item.Text);
DataRow dr = dt.NewRow();
dr["col1"] = item.Text;
dt.Rows.Add(dr);
}
}