Я нахожусь в процессе преобразования сетки в шаблон сетки пакетного редактирования для приложения ASP. NET. В событии SelectedIndexChanged
я пытаюсь сохранить эти элементы управления с помощью метода FindControl()
, но получаю сообщение об ошибке
Невозможно привести объект типа PanelNamingContainer к типу Telerik.Web. UI.GridItem '
во второй строке. Я пробовал преобразовать в просто элемент управления. Я больше не получаю сообщение об ошибке, но тогда tbIA
и rcbGrades
оказываются NULL. Что я могу сделать?
Код на стороне сервера
protected void RadCB1_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
in_c_Merit_Promotion_Flag = e.Value;
GridDataItem item = (GridDataItem)((RadComboBox)sender).NamingContainer;
RadNumericTextBox tbIA = (RadNumericTextBox)item.FindControl("tbIA");
RadComboBox rcbGrades = (RadComboBox)item.FindControl("rcbGrades");
Код на стороне клиента
<telerik:GridTemplateColumn HeaderStyle-BackColor="#00505C" HeaderStyle-ForeColor="White" DataField="Type_Of_Increase" HeaderText="Type Of Salary Increase" AllowFiltering="false"
EditFormColumnIndex="5" UniqueName="Type_Of_Increase" Visible="True" ReadOnly="False">
<ItemTemplate>
<asp:Label ForeColor="Black" BorderColor="LightSlateGray" runat="server" ID="lblTypeOfIncrease" Text='<%# Bind("Type_Of_Increase") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<telerik:RadComboBox runat="server" MarkFirstMatch="true" OnSelectedIndexChanged="RadCB1_SelectedIndexChanged" Skin="Web20" Width="50px"
AutoPostBack="true" ID="cboIncreaseType" datavaluefield="Text" datatextfield="Text" datasourceid="ObjDsSalIncType">
</telerik:RadComboBox>
<telerik:RadComboBox runat="server" Skin="Web20" Width="90px" MarkFirstMatch="true" AutoPostBack="false" ID="rcbGrades" Visible="false">
</telerik:RadComboBox>
</EditItemTemplate>
<HeaderStyle HorizontalAlign="Center" BackColor="LightSlateGray" Width="100px" ></HeaderStyle>
<ItemStyle BorderColor="LightSlateGray" BackColor="LightYellow" ForeColor="Black" Wrap="false" />
</telerik:GridTemplateColumn>`enter code here