0

RadGrid を使用して作成した 4 つのテーブルがあります。それらのそれぞれには、タイトルとIDを持つアイテムのリストが含まれています。このIDをデータベースから削除するコードを記述するイベントハンドラーを起動する「削除」リンクのある列が必要です。

これらの各テーブルにはデータベース内に個別のテーブルがあるため、どのテーブルがハンドラーを起動したか、および対応する ID を知る必要があります。

もう 1 つの小さな質問は、ビジュアル スタジオが GridCommandEventArgs を型として認識できるようにするには、何を含める必要があるかということです。

4

1 に答える 1

3

あなたの質問は少し混乱しています。DeleteCommand を使用して、行の ID を取得して削除できます。

<telerik:RadGrid ID="RadGrid1" runat="server"
   OnDeleteCommand="RadGrid1_DeleteCommand" 
   OnNeedDataSource="RadGrid1_NeedDataSource">
   <MasterTableView DataKeyNames="Id" CommandItemDisplay="Top">
      <Columns>
         <telerik:GridButtonColumn ButtonType="ImageButton" 
            ConfirmText="Are you sure you want to delete?"
            CommandName="Delete" ImageUrl="~/Images/Delete.png" 
            Text="Click to delete" UniqueName="Delete">
         </telerik:GridButtonColumn>               
      </Columns>
   </MasterTableView>            
</telerik:RadGrid>

protected void RadGrid1_DeleteCommand(object source, GridCommandEventArgs e)
{
   int id = Convert.ToInt32(e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["id"]);

   // Do delete based on the given id
}
于 2012-06-04T21:30:34.017 に答える