0

我有 4 个使用 RadGrid 创建的表。它们中的每一个都包含一个我有标题和 ID 的项目列表。我想要一个带有“删除”链接的列,它将触发一个事件处理程序,我将在其中编写代码以从数据库中删除这个 id。

这些表中的每一个在数据库中都有一个单独的表,所以我需要知道哪个表触发了处理程序以及它对应的 id 是什么。

另一个小问题是,我应该包含什么以便 Visual Studio 将 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 回答