Drop down menu 当下拉列表值重新选择为默认选项(“选择”)时,如何更改行颜色?

Drop down menu 当下拉列表值重新选择为默认选项(“选择”)时,如何更改行颜色?,drop-down-menu,colors,indexing,default,Drop Down Menu,Colors,Indexing,Default,我有gridview,每行都有dropdownlist的模板字段。所有dropdownlist都设置为默认值“选择”。当我从dropdownlist中选择任何值时,它将改变下面第三行的颜色,但当我重新选择“选择”时选项第三行的颜色仍然存在。我不需要它。它应该更改为gridview的默认颜色,即白色。 这是我的密码 protected void GridView1_SelectedIndexChanged(object sender,EventArgs e) { DropD

我有gridview,每行都有dropdownlist的模板字段。所有dropdownlist都设置为默认值“选择”。当我从dropdownlist中选择任何值时,它将改变下面第三行的颜色,但当我重新选择“选择”时选项第三行的颜色仍然存在。我不需要它。它应该更改为gridview的默认颜色,即白色。 这是我的密码

protected void GridView1_SelectedIndexChanged(object sender,EventArgs e)
    {

       DropDownList ddl = (DropDownList)sender;
        GridViewRow row = (GridViewRow)ddl.NamingContainer;

        int g = row.RowIndex + 3;
        int current_row_index = row.RowIndex;
        foreach (GridViewRow gvRow in GridView1.Rows)
        {

            gvRow.BackColor = Color.White;

           if (gvRow.FindControl("dropdownid") != null && gvRow.RowIndex != current_row_index)
            {
                ((DropDownList)gvRow.FindControl("dropdownid")).SelectedIndex = 0;
            }
             }

             GridView1.Rows[g].BackColor = Color.Red;

         }

解决了。我对代码做了以下更改,并且工作正常

 protected void GridView1_SelectedIndexChanged(object sender,EventArgs e)
    {

       DropDownList ddl = (DropDownList)sender;
        GridViewRow row = (GridViewRow)ddl.NamingContainer;
        int count=0;
        int g = row.RowIndex + 3;
        int current_row_index = row.RowIndex;
        foreach (GridViewRow gvRow in GridView1.Rows)
        {

            gvRow.BackColor = Color.White;
            if (((DropDownList)gvRow.FindControl("dropdownid")).SelectedIndex != 0)
            {
               // GridView1.BackColor = Color.Yellow;
                count++;

                Response.Write("null");

            }

           if (gvRow.FindControl("dropdownid") != null && gvRow.RowIndex != current_row_index)
            {
                ((DropDownList)gvRow.FindControl("dropdownid")).SelectedIndex = 0;
            }
             }



             GridView1.Rows[g].BackColor = Color.Red;
              Response.Write("count="+count);

              if (count == 0)
              {
                  foreach (GridViewRow gvRow in GridView1.Rows)
                  {
                      gvRow.BackColor = Color.White;

                  }

              }

         }

为了吸引更多的答案,您应该添加一个与您使用的语言或工具相对应的标签。您可以通过在编辑页面的底部添加标签来实现这一点。