我创建了一个带有下拉列表的员工注册页面。它用于为每个用户选择优先级。假设我想编辑一些用户详细信息,此时我使用下面的代码来选择下拉列表。它返回没有第一个索引的重复值。这意味着用户拥有第三优先级意味着它选择第三优先级而不具有第一优先级。
foreach (DataRow dr in DS.Rows)
{
txtemail.Enabled = false;
pan_addEdit.Visible = true;
this.btnSave.Text = "Update";
lbluserid.Text = Convert.ToString(dr["fdluserId"]);
txtuername.Text = Convert.ToString(dr["flduser"]);
txtPass.Text = Convert.ToString(dr["fldpass"]);
txtemail.Text = Convert.ToString(dr["fldemail"]);
ddlstatus.SelectedValue = Convert.ToString(dr["fldstatus"]);
ddlusergroup.SelectedValue = Convert.ToString(dr["fldgroupId"]);
ddldept.SelectedValue = Convert.ToString(dr["flddept"]);
ddlperiority.SelectedValue = Convert.ToString(dr["fldperiority"]);
}
绑定(bind)后下拉列表显示以下值
1st priority
2nd priority
3rd priority
绑定(bind)后下拉列表显示以下值
3rd priority
2nd priority
3rd priority
请帮我解决这个错误..
最佳答案
您不想更改当前所选项目的Text
。您想要更改选择本身。因此,您可以使用 SelectedIndex
或SelectedValue
DropdownList 的属性。
ddlperiority.SelectedValue = Convert.ToString(dr["fldperiority"]);
当然,必须有一个与 dr["fldperiority"]
匹配的值。也许这是文本字段,您需要 PK/FK 字段。
关于c# - 下拉列表中的项目重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9907234/