/ / Sharepoint Toolpart Event Not Firing - sharepoint, eventy, części web, toolpart

Sharepoint Toolpart Event Not Firing - sharepoint, eventy, web-parts, toolpart

Stworzyłem SharePoint WebPart i mambiorąc pod uwagę niestandardowy zestaw narzędzi, który zawiera siatkę (a dokładniej Telerik RadGrid, choć nie jest to istotne). Wypełniłem siatkę i utworzyłem obiekt GridButtonColumn w celu dodania do siatki:

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);
}

Siatka renderuje się poprawnie - zapełniona danymi i przy obecnym przycisku usuwania.

Teraz, kiedy kliknę dowolny przycisk usuwania, przycisk Grid_DeleteCommand() zdarzenie nie zostanie uruchomione. Jednak po dodaniu losowego przycisku poza siatką uruchamiane jest zdarzenie kliknięcia:

Button b = new Button();
b.Text = "Hello World";
b.Click += new EventHandler(Button_Click);

Nie mogę debugować tej instalacjiSharepoint (a może mogę, ale dołączenie do procesu jeszcze nie pozwoliło mi tego zrobić), więc metodą obu tych zdarzeń jest po prostu przekierowanie do Google. W ten sposób sprawdzam, czy zdarzenia się uruchamiają:

    string AbsoluteUri ="http://www.google.com";
Page.Response.Redirect(AbsoluteUri);

Jedyną różnicą, którą widzę między nimi, jest to, że przycisk „Usuń” jest zagnieżdżony w kontrolce siatki, natomiast przycisk „Witaj świecie” nie powoduje zagnieżdżenia.

Jak mógłbym mieć Grid_DeleteCommand strzelać po kliknięciu przycisku na siatce?

Odpowiedzi:

1 dla odpowiedzi № 1

Korzystając z kontrolki Telerik Grid, powinieneś określić przyciski CommandName w twoim kodzie.

Dodanie tego wiersza powinno rozwiązać problem:

c.CommandName = "Delete";