Включить отключить флажок в Asp.net Gridview на основе DropDownlist в С#
У меня проблема с кодом С#.
Мне нужно включить или отключить флажки в gridview asp.net на основе DropDownList.
Если в DropDownList нет выбранных значений, флажки в GridView отключены.
Когда в DropDownList выбрано значение, флажки в GridView включены для переменной, выбранной в DropDownList.
В GridView вывод корректен, когда в DropDownList выбрали значение, но флажки всегда включены.
Я пробовал использовать это решение без успеха.
Вот мой код:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
try
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
CheckBox chkSelect = (CheckBox)e.Row.FindControl("chkSelect");
if (DDL.SelectedIndex != 0)
{
chkSelect.Enabled = true;
}
}
}
catch (Exception)
{
}
}
# 1
<asp:DropDownList ID="DDL" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DDL_SelectedIndexChanged"
CssClass="ddl_Class" Enabled="false">
<asp:ListItem Text="-------" Value=""></asp:ListItem>
</asp:DropDownList>
<asp:TemplateField>
<ItemTemplate>
<center>
<asp:CheckBox ID="chkSelect" runat="server" OnCheckedChanged="CheckBox1_CheckedChanged"
AutoPostBack="true" Enabled="false" /></center>
</ItemTemplate>
</asp:TemplateField>
protected void DDL_SelectedIndexChanged(object sender, EventArgs e)
{
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox chkSelect = ((CheckBox)GridView1.Rows[i].FindControl("chkSelect"));
if (DDL.SelectedIndex != 0)
{
chkSelect.Enabled = true;
}
}
GridViewBind();
}
установите флажок Включить ИЛИ Отключить включение
protected void DDL_SelectedIndexChanged(object sender, EventArgs e)
{
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox chkSelect = ((CheckBox)GridView1.Rows[i].FindControl("chkSelect"));
if (DDL.SelectedIndex != 0)
{
chkSelect.Enabled = true;
}
}
}
dropdown_SelectedIndexChanged
Сначала найдите кнопку проверки внутри этого события, а затем примените ваше условие.