Как получить значение столбца в Radgrid на событие DeleteCommand - PullRequest
3 голосов
/ 21 мая 2011

Привет. Все, у меня есть радгрид, такой как:

<cc1:RadGridCustomized ID="RadGrid1" runat="server" OnNeedDataSource="RadGridCustomized1_NeedDataSource"
    OnPreRender="RadGridCustomized1_PreRender" OnUpdateCommand="RadGridCustomized1_UpdateCommand"
    OnDeleteCommand="RadGridCustomized1_DeleteCommand" OnInsertCommand="RadGridCustomized1_InsertCommand"
    OnItemCreated="RadGridCustomized1_OnItemCreated">
    <MasterTableView DataKeyNames="ID">
        <Columns>
            <telerik:GridTemplateColumn HeaderText="گروه آزمایش" Visible="false">
                <ItemTemplate>
                    <%# Eval("HSEWaterExamGroupName") %>
                </ItemTemplate>
                <EditItemTemplate>
                    <telerik:RadComboBox OnDataBinding="RadGridCustomized1_ccbBinding3" runat="server"
                        ID="cbbHSEWaterExamsBaseGroup">
                    </telerik:RadComboBox>
                </EditItemTemplate>
            </telerik:GridTemplateColumn>
            <telerik:GridTemplateColumn HeaderText="نام ماده/ آزمایش" UniqueName="materialName">
                <ItemTemplate>
                    <%# Eval("HSEWaterExamBaseName") %>
                </ItemTemplate>
                <EditItemTemplate>
                    <telerik:RadComboBox OnDataBinding="RadGridCustomized1_ccbBinding4" runat="server"
                        ID="cbbName">
                    </telerik:RadComboBox>
                    <telerik:RadTextBox ID="txtName" Enabled="false" Visible="false" runat="server" >
                  </telerik:RadTextBox>
                </EditItemTemplate>
            </telerik:GridTemplateColumn>
    </Columns>
    </MasterTableView>
</cc1:RadGridCustomized>

Теперь я хочу получить значение столбца "materialName" в событии DeleteCommand.Я использую этот код:

GridDataItem da = e.Item as GridDataItem;
string name = da["materialName"].Text;

или этот код:

  name =  RadGrid1.MasterTableView.Items[e.Item.ItemIndex]["materialName"].Text;

, но возвращаемое значение является пустой строкой.Пожалуйста, помогите мне, если у кого-нибудь есть идея сделать это.заранее спасибо.

Ответы [ 2 ]

1 голос
/ 29 октября 2012

Вы можете использовать UniqueName, чтобы получить значение столбца:

da.item["UniqueName"].Text

1 голос
/ 12 сентября 2011

Сначала получите идентификатор, а затем из этого идентификатора вы получите имя с:

int id = (int)e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["ID"];
...