Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sharepoint Toolpart事件未触发_Sharepoint_Events_Web Parts_Toolpart - Fatal编程技术网

Sharepoint Toolpart事件未触发

Sharepoint Toolpart事件未触发,sharepoint,events,web-parts,toolpart,Sharepoint,Events,Web Parts,Toolpart,我创建了一个Sharepoint Web部件,并为其提供了一个自定义的ToolPart,其中包括一个网格(确切地说是Telerik RadGrid,尽管这与此无关)。我已经填充了网格,并创建了GridButtonColumn对象以添加到网格: protected override void CreateChildControls() { GridButtonColumn c = new GridButtonColumn(); c.ConfirmTe

我创建了一个Sharepoint Web部件,并为其提供了一个自定义的ToolPart,其中包括一个网格(确切地说是Telerik RadGrid,尽管这与此无关)。我已经填充了网格,并创建了GridButtonColumn对象以添加到网格:

protected override void CreateChildControls()
{
            GridButtonColumn c = new GridButtonColumn();
            c.ConfirmText = "Really Delete?";
            c.ConfirmDialogType = GridConfirmDialogType.RadWindow;
            c.ConfirmTitle = "Delete";
            c.ButtonType = GridButtonColumnType.LinkButton;
            c.Text = "Delete";
            c.UniqueName = "DeleteColumn";
            grid.Columns.Add(c);
    // ...

    grid.DeleteCommand += new GridCommandEventHandler(Grid_DeleteCommand);
}
网格渲染正确-填充数据并显示“删除”按钮

现在,当我单击任何删除按钮时,
Grid\u DeleteCommand()
事件不会被触发。但是,当我在网格外添加一个随机按钮时,会触发其单击事件:

Button b = new Button();
    b.Text = "Hello World";
    b.Click += new EventHandler(Button_Click);
我无法在此Sharepoint安装上进行调试(或者我可以,但附加到进程还不允许我进行调试),因此这两个事件的方法只是重定向到Google。这就是我检查事件是否触发的方式:

    string AbsoluteUri ="http://www.google.com";
    Page.Response.Redirect(AbsoluteUri);
我能看到两者之间的唯一区别是,使用“Delete”按钮,它嵌套在网格控件中,而使用“Hello World”按钮,则没有嵌套


当我单击网格中的按钮时,如何才能让
网格_delete命令
启动?

使用Telerik网格控件,您应该在代码中指定按钮的
命令名

添加此行可以解决以下问题:

c.CommandName = "Delete";

使用Telerik网格控件,您应该在代码中指定按钮的
CommandName

添加此行可以解决以下问题:

c.CommandName = "Delete";