gpt4 book ai didi

c# - 包含 CheckBoxList 的 ListView - 所选项目未显示为已选中

转载 作者:行者123 更新时间:2023-11-30 18:10:39 25 4
gpt4 key购买 nike

我有一个 ListView 和一个调用方法 onItemEditingEditItemTemplate

在我的 ListView 中,我有一个使用 LINQ 绑定(bind)的 CheckBoxList

在我的 onItemEditing 方法中,我尝试检查某些 CheckBoxes 是否出现在将用户与扇区链接起来的查找表中。

但是,当我加载 EditItemTemplate 时,即使我在 onItemEditing 方法中将它们设置为已选中,也没有检查任何 CheckBoxes .

方法如下:

protected void onItemEditing(object sender, ListViewEditEventArgs e)
{
ListView1.EditIndex = e.NewEditIndex;
ListView1.DataBind();

int regId = Convert.ToInt32(((Label)ListView1.Items[e.NewEditIndex].FindControl("LblRegId")).Text);
CheckBoxList cbl = (CheckBoxList) ListView1.Items[e.NewEditIndex].FindControl("chkLstSectors");

//test to see if forcing first check box to be selected works - doesn't work
cbl.Items[0].Selected = true;

SqlConnection objConn = new SqlConnection(ConfigurationManager.ConnectionStrings["DaresburyConnectionString"].ToString());
SqlCommand objCmd = new SqlCommand("select * from register_sectors where register_id= " + regId, objConn);
objConn.Open();

SqlDataReader objReader = objCmd.ExecuteReader();

if (objReader != null)
{
while (objReader.Read())
{
ListItem currentCheckBox = cbl.Items.FindByValue(objReader["sector_id"].ToString());
if (currentCheckBox != null)
{
currentCheckBox.Selected = true;
}
}
}
}

有什么办法解决这个问题吗?

最佳答案

问题是 listView 在绑定(bind)了 checkboxlist 之后又被绑定(bind)了。

我删除了绑定(bind),它起作用了!

关于c# - 包含 CheckBoxList 的 ListView - 所选项目未显示为已选中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1193008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com