Выбранный индекс Измененное событие не запускается для DropDownList во время привязки данных при загрузке страницы - PullRequest
0 голосов
/ 24 января 2011

У меня есть раскрывающийся список (System.Web.UI.WebControls.DropDownList), который я связываю во время загрузки страницы.

try
     {
        if (!Page.IsPostBack)
           {
              DataTable dt = new StaticNoticeController().GetStaticNoticeNames();
               this.HeadingsDropDownList.AutoPostBack = true;
               this.HeadingsDropDownList.DataSource = new StaticNoticeController().GetStaticNoticeNames();
               this.HeadingsDropDownList.DataTextField = "NoticeName";
               this.HeadingsDropDownList.DataValueField = "NoticeId";                  
                 this.HeadingsDropDownList.DataBind();                                       

           }
     }   
catch (SystemException ex)
    {
                //ToDo: Log the Exception
    }

Я ожидаю, что событие SelectedIndex сработает, когда я свяжу раскрывающийся список с выпадающим списком (который используется в случае с выпадающими списками в Winforms), так что страница загружается со значениями, соответствующими начальному значению в раскрывающемся списке.

Я даже пытался

this.HeadingsDropDownList.selectedIndex = -1;
в загрузке страницы после привязки данных. Но напрасно.

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

Пожалуйста, помогите. Заранее спасибо

Ответы [ 2 ]

1 голос
/ 24 января 2011

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

Если это инициализированное значение, то, что должен сделать постбэк, должно быть сделано в init.

1 голос
/ 24 января 2011

Почему вы хотите запустить SelectedIndexChanged-Event ??Как вы уже упоминали, выбранный индекс изменится, если пользователь изменит его вручную на стороне клиента.Это желаемое поведение.Если вы изначально хотите вызвать функцию на стороне сервера, которая также будет вызываться при изменении выбранного индекса, вызовите ее вручную!

...