2016-12-09 43 views
0

リンクボタンを追加する方法自動生成されたGridviewとそのリンクボタンに対するwrite onclickイベントを動的に追加する方法。リンクボタンを動的に自動生成されたGridviewに追加する方法

<asp:GridView ID="GridView4" runat="server" BorderColor="#3366CC" BorderStyle="None" 
          BorderWidth="1px" CellPadding="4" ShowHeaderWhenEmpty="True" Width="996px" HeaderStyle-Wrap="false" 
          ItemStyle-Wrap="false" OnRowDataBound="GridView4_RowDataBound"> 

          <PagerSettings Mode="NextPreviousFirstLast" FirstPageText="First" LastPageText="Last" 
           NextPageText="Next" PreviousPageText="Previous" /> 
          <FooterStyle BackColor="#99CCCC" ForeColor="#003399" /> 
          <HeaderStyle BackColor="#003399" Font-Bold="True" ForeColor="#CCCCFF" Height="10px" /> 
          <RowStyle ForeColor="white" HorizontalAlign="Center" Font-Names="Microsoft Sans Serif" /> 
          <SelectedRowStyle BackColor="#009999" Font-Bold="True" ForeColor="#CCFF99" /> 
          <SortedAscendingCellStyle BackColor="#EDF6F6" /> 
          <SortedAscendingHeaderStyle BackColor="#0D4AC4" /> 
          <SortedDescendingCellStyle BackColor="#D6DFDF" /> 
          <SortedDescendingHeaderStyle BackColor="#002876" /> 
</asp:GridView> 

グリッドビューに動的にバインドされたデータ。ヘッダーとデータは毎回変更されます。

リンクボタンのすべてのデータをバインドし、そのボタンのコードを記述する必要があります。

助けてください.........................

+0

を取得するイベントハンドラを起動しますか? –

+0

私はgridviewからのデータを取って、別のグリッドの値をバインドする値に応じてしたいと思います。 – Hari

答えて

0

リンクボタンを追加する必要はありません。
あなたがGridView4データセットから

  1. DataKeys、フィールドのカンマ区切りのリストを追加する必要が
  2. 行選択を有効に
  3. は、代わり

    <asp:GridView ID="GridView4" runat="server" 
           AutoGenerateSelectButton="True" 
           OnSelectedIndexChanged="GridView4_SelectedIndexChanged" 
           DataKeyNames="XXX,YYY,ZZZ"> 
    
        ... 
    </asp:GridView 
    

行選択ハンドラーを追加します。上記はすべてコードの背後で行うことができます。行を選択

はあなたがボタンを追加したいアクションのデータ・キー

protected void GridView4_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     // Retrieve data from selected row 
     String field1 = (String) GridView1.SelectedDataKey.Values[ "XXX" ]; 
     int field2 = (int) GridView1.SelectedDataKey.Values[ "YYY" ]; 
     double field3 = (double) GridView1.SelectedDataKey.Values[ "ZZZ" ]; 

     PopulateYourOtherGridviewDataSource(field1, field2, field3); 
     GridViewOther.DataBind(); 
    } 
+0

どのくらいの数のフィールドがデータベースから取得されるのか分かりません – Hari

+0

完全に動的なシナリオでも、* "Grid1" *からの選択によって* "Grid2" *が入力される場合、少なくともデータ型と2番目のグリッドを配置するためのフィールド位置 – fnostro

関連する問題