S.Rajendran from Coimbatore Ответов: 2

Как использовать инструкции DDL, который находится внутри поля шаблона элемента управления GridView


Я храню DDL 'AmtddL' внутри поля шаблона GV3. Я хочу выбрать значение из этого DDL и использую обработчик событий "OnSelectedIndexChanged" с этим DDL. У меня уже есть этот обработчик событий с GV3. Я получаю ошибку: "нет перегрузки для "ddlselectedindexchanged" соответствует системе делегатов.EventHandler'. Я представляю коды.


protected void ddlselectedindexchanged(object sender,GridViewRowEventArgs e)  //district ddl
   {
       var ddlsample = (DropDownList)e.Row.FindControl("AmtddL");

       if (ddlsample.SelectedIndex == 0)
       {

       }
       else
       {


<asp:GridView ID="GridView3" runat="server" HorizontalAlign="Center"  AutoGenerateColumns="False"   OnRowDataBound="gvUserInfo_RowDataBound"

         style="border-color: #808000; top: 480px; left: 77px; position: absolute; height: 84px; font-size:small;
         width: 1100px" PageSize="5" AllowPaging="true"

         onselectedindexchanged="GridView3_SelectedIndexChanged">
         <Columns >
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chkSelect5" runat="server"   />
</ItemTemplate>
</asp:TemplateField>
</Columns>

            <RowStyle HorizontalAlign="Center" />
            <Columns>


 <asp:TemplateField HeaderText="AmtddL">
<ItemTemplate>
<asp:DropDownList ID="AmtddL" runat="server" Width="84px" OnSelectedIndexChanged="ddlselectedindexchanged"/>
</ItemTemplate>
</asp:TemplateField>

2 Ответов

Рейтинг:
13

Tadit Dash (ତଡିତ୍ କୁମାର ଦାଶ)

Воспользуйся EventArgs вместо GridViewRowEventArgs.

protected void ddlselectedindexchanged(object sender, EventArgs e)
{
    //do something...
}

Также устанавливать AutoPostBack="True" для DropDownList.

Ссылаться- GridView в dropdownlist для выбранного индекса изменились событие &ампер; индекс сделать GridView в строке [^]


S.Rajendran from Coimbatore

Я сделал, как вы сказали. Я получаю ошибку типа: ошибка 111 'System.EventArgs' не содержит определения для 'Row' и никакого метода расширения 'Row', принимающего первый аргумент типа 'System.EventArgs В' может быть найден (пропущена директива using или ссылка на сборку?)

Tadit Dash (ତଡିତ୍ କୁମାର ଦାଶ)

Это происходит потому, что вы используете e.Row, который не содержится в EventArgs. Вы должны получить выпадающий список, как показано ниже, как это предлагается в ссылке.

DropDownList ddlsample = (DropDownList)отправитель;

S.Rajendran from Coimbatore

Что ж. Это работает. Спасибо.

Tadit Dash (ତଡିତ୍ କୁମାର ଦାଶ)

Добро пожаловать. :)

Рейтинг:
1

Tommy Beouy

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


Richard Deeming

Если вы хотите задать вопрос, то ЗАДАВАТЬ ВОПРОС[^].

НЕ разместите свой вопрос как "решение" на чей-то другой вопрос.

Этот вопрос уже имеет разрешение, которое было опубликовано и принято 4½ года назад.