#asp.net #telerik #radgrid
#asp.net #telerik #radgrid
Вопрос:
Всем привет, у меня есть radgrid, подобный этому :
<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;
но возвращаемое значение является пустой строкой.
пожалуйста, помогите мне, если у кого-нибудь есть идея сделать это.
заранее спасибо.
Ответ №1:
Сначала получите идентификатор, а затем из этого идентификатора вы получите имя с:
int id = (int)e.Item.OwnerTableView.DataKeyValues[e.Item.ItemIndex]["ID"];
Ответ №2:
Вы можете использовать UniqueName для получения значения столбца:
da.item["UniqueName"].Text