Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
DropDownList и событие OnSelectedIndexChanged
|
|||
|---|---|---|---|
|
#18+
Всем доброго времени суток. Перечитал почти всю ветку. Поиск юзал. Решение проблемы не нашел :( Итак, имеется контролл: <asp:DropDownList ID="DropDownList1" runat="server" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"> <asp:ListItem Value="1">1</asp:ListItem> <asp:ListItem Value="1">2</asp:ListItem> </asp:DropDownList> Я так понимаю, что при выборе элемента должен срабатывать метод DropDownList1_SelectedIndexChanged: protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { Response.Write("sdasdsad"); //MultiView1.ActiveViewIndex = DropDownList1.SelectedIndex; } Но этого не происходит!!! Смотрел сорс страницы, как и ожидал, ничего не повешено на событие выбора элемента в комбобоксе... Недавно наткнулся на совет повесить все действия на кнопку сабмита. Но мне это не подходит. Объясните, будьте добры, что я не так делаю. Ткните плиз носом... :maniac: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2006, 02:20 |
|
||
|
DropDownList и событие OnSelectedIndexChanged
|
|||
|---|---|---|---|
|
#18+
Проверь функцию ... private void InitializeComponent() ... одна из линий кода должна быть примерно такая: { ... this.DropDownList1.SelectedIndexChanged += new System.EventHandler(this.DropDownList1_SelectedIndexChanged); ... } Если этой линии нет, то ничего и не должно срабатывать. Также проверь, что свойство AutoPostBack у DropDownList1 контрола установлено в true. Если DropDownList1.AutoPostBack равен false, то тоже ничего не будет срабатывать. Надеюсь это поможет. Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2006, 03:08 |
|
||
|
DropDownList и событие OnSelectedIndexChanged
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, гост ь, Вы писали: >Проверь функцию >... >private void InitializeComponent() >... >одна из линий кода должна быть примерно такая: >{ >... > this.DropDownList1.SelectedIndexChanged += new System.EventHandler(this.DropDownList1_SelectedIndexChanged); >... >} >Если этой линии нет, то ничего и не должно срабатывать. >Также проверь, что свойство AutoPostBack у DropDownList1 контрола установлено в true. Если DropDownList1.AutoPostBack равен false, то тоже ничего не будет срабатывать. >Надеюсь это поможет. Удачи. > данное сообщение получено с www.gotdotnet.ru >ссылка на оригинальное сообщение по поводу добавления нового евент хендлера. Это ведь с дотнет 1. А я на 2 пишу. Здесь такого нет, и вроде бы и быть не должно... А если поставить AutoPostBack="true", тогда страница перезагружается и все. В обработчик я не попадаю :( содержимое моих файлов: Default.aspx: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" Trace="false" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>Untitled Page</title> </head> <body> <form id="form1" runat="server"> <div> <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"> <asp:ListItem Value="1">1</asp:ListItem> <asp:ListItem Value="1">2</asp:ListItem> </asp:DropDownList> <br /> <asp:MultiView ID="MultiView1" runat="server"> <asp:View ID="View1" runat="server"> <asp:Label runat="server">View 1</asp:Label> </asp:View> <asp:View ID="View2" runat="server"> <asp:Label runat="server">View 2</asp:Label> </asp:View> </asp:MultiView></div> </form> </body> </html> Default.aspx.cs using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { MultiView1.ActiveViewIndex = 0; } protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { Response.Write("sdasdsad"); MultiView1.ActiveViewIndex = DropDownList1.SelectedIndex; } } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2006, 15:51 |
|
||
|
DropDownList и событие OnSelectedIndexChanged
|
|||
|---|---|---|---|
|
#18+
bezludny ... public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!this.IsPostBack) { MultiView1.ActiveViewIndex = 0; } } ...} А так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2006, 16:09 |
|
||
|
DropDownList и событие OnSelectedIndexChanged
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Артем1, Вы писали: А> bezludny А>... А>public partial class _Default : System.Web.UI.Page А>{ А> protected void Page_Load(object sender, EventArgs e) А> { А> if (!this.IsPostBack) { А> MultiView1.ActiveViewIndex = 0; А> } А> } А>...} А>А так? А> данное сообщение получено с www.gotdotnet.ru А>ссылка на оригинальное сообщение хех. :) Вообщем, я похоже невнятно объясняю :( Суть не в том, чтобы сменить вьюху. Суть в том, чтобы по выбору элемента в дропдаун листе я попадал в метод DropDownList1_SelectedIndexChanged. А этого не происходит. Даже в случае выставления аутопостбек на дропдаун. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2006, 17:50 |
|
||
|
DropDownList и событие OnSelectedIndexChanged
|
|||
|---|---|---|---|
|
#18+
bezludny по поводу добавления нового евент хендлера. Это ведь с дотнет 1. А я на 2 пишу. Здесь такого нет, и вроде бы и быть не должно... А если поставить AutoPostBack="true", тогда страница перезагружается и все. В обработчик я не попадаю :( ... <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"> <asp:ListItem Value="1">1</asp:ListItem> <asp:ListItem Value="1">2</asp:ListItem> </asp:DropDownList> ... Вы правы - мой совет относился к 1.1 - с 2.0 я практически не работал. Но вы удачно привели код вашего примера и я повторил вашу проблему используя VS 2005. Посмотрите на ваш код приведенный выше - в обоих ListItem-ах величина Value равна 1-му. Конечно же при таком раскладе когда вы меняете что то в dropdown листе этот dropdown не генерит ничего, так как для обоих ListItem-ов величина Value равна 1. Просто измените ваш код на следующий: ... <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"> <asp:ListItem Value="1">1</asp:ListItem> <asp:ListItem Value="2">2</asp:ListItem> </asp:DropDownList> ... и вы начнете попадать в event :-). Надеюсь в этот раз я помог :-). Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2006, 19:07 |
|
||
|
DropDownList и событие OnSelectedIndexChanged
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, гост ь, Вы писали: >Просто измените ваш код на следующий: >... > <asp:DropDownList ID="DropDownList1" runat="server" > AutoPostBack="true" > OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"> > <asp:ListItem Value="1">1</asp:ListItem> > <asp:ListItem Value="2">2</asp:ListItem> > </asp:DropDownList> >... >и вы начнете попадать в event :-). Надеюсь в этот раз я помог :-). >Удачи. Спасибо огромное! Очень приятно, что есть люди, готовые помочь :) Как говорит наш препод по латыни: "Честь тобі і слава!" :) Благодарности + респект. :super: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.11.2006, 23:34 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=34121606&tid=1387657]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
| others: | 222ms |
| total: | 352ms |

| 0 / 0 |
