3

ページに4つのドロップダウンリストがあるWebページがあります。ページ ロード メソッドでは、コード ビハインドでドロップダウン リストの値を設定します。問題は、ドロップダウンリストのいずれかを設定すると、すべてのドロップダウンリストが設定されることです。

    protected void Page_Load(object sender, EventArgs e)
    {

        if (!IsPostBack)
        {
            //populating the dropdownlist with values
            for (int i = 0; i < 60; i++)
            {
                ListItem temp = new ListItem(i + "");
                ddl_EndMin.Items.Add(temp);
                ddl_StartMin.Items.Add(temp);
                if (i < 24)
                {
                    ddl_EndHour.Items.Add(temp);
                    ddl_StartHour.Items.Add(temp);
                }
            }

            //Setting the dropdownlists with the values from the conference variable
            ddl_EndHour.SelectedIndex = conference.EndDate.Hour;
            ddl_StartMin.SelectedIndex = conference.StartDate.Minute;
            ddl_StartHour.SelectedIndex = conference.StartDate.Hour;
            ddl_EndMin.SelectedIndex = conference.EndDate.Minute;
        }
    }
}

これらのドロップダウン リストの 1 つを選択してインデックスを設定すると、それらすべてが設定される理由がわかりません。また、それらの1つをListBoxに置き換えてみましたが、ListBoxの値も設定されました。別のページには、この選択されたインデックス メソッドを使用して 2 つのドロップダウン リストを設定するコードがありますが、数値ではなく状態を使用し、問題なく動作します。

ddl_EndMin.SelectedIndex = ddl_EndMin.Items.IndexOf(ddl_EndMin.Items.FindByValue(conference.EndDate.Minute.ToString()));
ddl_EndHour.SelectedIndex = ddl_EndHour.Items.IndexOf(ddl_EndHour.Items.FindByValue(conference.EndDate.Hour.ToString()));

そのコードをコピーして、現在取り組んでいるものに貼り付けて名前を変更しようとしましたが、同じ結果が得られました。この問題が発生する理由について、ご意見をいただければ幸いです。

4

1 に答える 1