Re[2]: DropDownList и событие OnSelectedIndexChanged
От: bezludny Украина  
Дата: 12.11.06 12:51
Оценка:
Здравствуйте, гост ь, Вы писали:

>Проверь функцию

>...
>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;
    }
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.