0

我有一个包含 3 列的 gridview:State(绑定字段)、Code(绑定字段)和 ChangeCode(下拉列表)。ChangeCode 字段的目的是更改特定状态的 Code 的值。适用于每个州的代码列表是不同的。

我有一张表格,其中列出了状态及其当前代码。我还有一张表,其中列出了每个州的允许代码列表。我希望更改代码下拉列表动态显示适用于当前记录的所有允许代码。我正在使用带有 C# 的 ASP.NET。

State 和 Code 字段是从一个数据源中获取的。我无法使用包含当前记录的 State 值的查询从不同的数据源获取 ChangeCode 下拉值。这是因为我无法在运行时解析当前 gridview 的行。任何关于如何实现这一点的想法将不胜感激......

4

1 回答 1

0

您可以使用 Gridview 的 RowDataBound 事件并在此事件中为特定状态绑定 ChangeCode 下拉列表。

     void GridView_RowDataBound(Object sender, GridViewRowEventArgs e)
     {
       DataRowView drv = (DataRowView)e.Row.DataItem; 
        if(e.Row.RowType == DataControlRowType.DataRow)
      {
         String State = drv["StateColumnName"].ToString();
      //Now You Have State So You Can Get All Code Values By State Name
         DataTable dtcodes = GetByState();
      //Now Bind This Code To DropDownList Of Codes
        DropDownList dropdownCodes = (DropDownList)e.Row.FindControl("dropdownCodes");
        dropdownCodes.DataSource = dtcodes;
        dropdownCodes.DataBind();

        }

     }
于 2013-09-18T23:38:12.320 回答