我正在使用模板字段向 gridview 添加一个下拉列表:
<asp:TemplateField HeaderText="Change Color">
<ItemTemplate>
<asp:DropDownList ID="dropdownid" DataSourceID="sqldatasource_id" DataTextField="username"
BackColor="GrayText" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" AppendDataBoundItems="True" runat="server" AutoPostBack="True">
<asp:ListItem Text="--Select One--" Value="" Selected="True" />
</asp:DropDownList>
SqlDataSource 是:
<asp:SqlDataSource ID="sqldatasource_id" runat="server" ConnectionString="<%$ ConnectionStrings:crudconnection %>"
SelectCommand="SELECT [username] FROM [crudtable]"></asp:SqlDataSource>
Indexchange-Event 为:
protected void GridView1_SelectedIndexChanged(object sender,EventArgs e)
{
}
I want to highlight a row when any value from the corresponding dropdownlist is selected. 我该怎么做?
提前致谢。
我尝试过这个:
GridView1.Rows[GridView1.SelectedIndex].BackColor = Color.Red;
但是,当我从任何下拉列表中选择任何值时,它仍然会给出如下异常。
指数超出范围。必须是非负数且小于集合的大小。参数名称:索引
如前所述,我正在获取所选行的索引号。我不能从那里增加它并且也可以使用背景颜色属性吗?