OnItemCommand 不适用于 Telerik 网格

OnItemCommand Doesn't Work on Telerik Grid

我正在尝试创建一个 Telerik 网格,其中一列包含一个按钮,单击该按钮可执行特定操作。 这是我在 ASP:

中定义的网格
<sq:Grid runat="server" CssClass="Master" ID="ReportGrid" DataSourceID="WorkPackageDS" 
           CellSpacing="0" GridLines="None" PageSize="100" AllowSorting="True" OnItemCommand="CancelWorkPackage_OnItemCommand"
           AllowCustomPaging="True" AutoGenerateColumns="False" EnableViewState="False">

这是我添加的按钮:

<sq:GridTemplateColumn FilterImageToolTip="סינון" HeaderText="ביטול חבילת עבודה" UniqueName="btnCancelWO">
  <ItemTemplate>
    <asp:ImageButton runat="server" ID="btnCancel" ImageUrl="~/Shared Resources/imaes/tasksButton.png" 
                     CommandName="CancelWO" CssClass="GridImageButton">
    </asp:ImageButton>
  </ItemTemplate>
</sq:GridTemplateColumn>

"sq"只是我公司的东西,不过是Telerik对象的意思。 这是我的函数的 C# 代码:

public void CancelWorkPackage_OnItemCommand(object sender, GridCommandEventArgs e)
    {
        if (e.CommandName == "CancelWO")
        {
            if (e.Item is GridDataItem)
            {
                GridDataItem gridDataItem = e.Item as GridDataItem;

                string WFGUI = gridDataItem.FindControl("GUI").ToString();
                int WorkflowInstanceId = Int32.Parse(gridDataItem.FindControl("fldIWfId").ToString());

                RoadsManager.Instance.CancelWorkPackage(WFGUI, WorkflowInstanceId);
                RoadsManager.Instance.LogCancellation(new[] { WorkflowInstanceId }, CurrentActivityId, CurrentUserId);
                SignManager.Instance.DownloadPermitsFromSSRS(WorkflowInstanceId, WorkflowAPI.Instance.GetWorkflowVariable<object>(WorkflowInstanceId, "ReportName").ToString());
                ShowAlert("חבילת עבודה ואישורים בוטלו בהצלחה", 400, 150, "הודעה חשובה");
            }
        }
    }

我在 C# 函数的开头(在 if 上)添加了断点,程序甚至没有进入该函数。 我究竟做错了什么? 谁能给我提示要更改什么? 提前谢谢你

我将整个列从 GridTemplateColumn 更改为 GridButtonColumn,现在它工作正常。