簡體   English   中英

如何根據另一列的值動態填充gridview下拉列表?

[英]How to populate a gridview dropdown dynamically depending on another column's value?

我有3列的gridview:狀態(綁定字段),代碼(綁定字段)和ChangeCode(下拉列表)。 ChangeCode字段的目的是更改特定狀態的Code值。 適用於每個州的代碼列表不同。

我有一張表,上面列出了狀態及其當前代碼。 我還有一個表,列出了每個州的允許代碼。 我希望更改代碼下拉列表動態顯示適用於當前記錄的所有允許的代碼。 我在C#中使用ASP.NET。

“狀態”和“代碼”字段是從一個數據源獲取的。 我無法使用包含當前記錄的State值的查詢從其他數據源中獲取ChangeCode下拉值。 這是因為我無法在運行時解析當前gridview的行。 任何有關如何實現這一點的想法將不勝感激。

您可以使用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();

        }

     }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM