Telerik Radgrid GridDataItem.DataItem пуст при обновлении (обработчик OnUpdateCommand)

При обработке события OnUpdateCommand в RadGrid DataItem имеет значение null.

Я думал, что это также будет представлять элемент данных, представленный строкой.

Radgrid заполняется из IList, и в обработчике код выглядит так...

protected void rgAllocatedClients_UpdateCommand(object sender, GridCommandEventArgs e)
{
    if (e.Item is GridDataItem)
    {
        var gridDataItem = e.Item as GridDataItem;
        var client= gridDataItem .DataItem as Client;
        ....
        ....

Это работает при обработке события ItemDataBound, но не при обработке события UpdateCommand. Мне это действительно нужно, так как в моем классе Client есть идентификатор строки, для которой я хочу обработать обновление.

Спасибо,


person Remotec    schedule 10.05.2010    source источник


Ответы (2)


Попробуйте это с помощью GridEditableItem


 protected void grdContacts_UpdateCommand(object source, Telerik.Web.UI.GridCommandEventArgs e)
    {

        string idEditing = e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["Id"].ToString();
        GridEditableItem editedItem = e.Item as GridEditableItem;
        Hashtable newValues = new Hashtable();
// ur code
}
person renjucool    schedule 14.05.2010

Предполагая, что ваша сетка находится в режиме редактирования перед командой обновления, вы должны привести e.Item к GridEditableItem вместо GridDataItem.

person Midhat    schedule 10.05.2010