0

選択した項目が変更されたときに、DropDownList を AutoPostBack に取得しようとしています。なぜこれが機能しないのか、私は少し混乱しています。

誰か簡単なアイデアがありますか?助けてください

ここにコードがあります: -

     <asp:DropDownList ID="ddl_username" runat="server"
     AutoPostBack="True" 
     onselectedindexchanged="ddl_username_SelectedIndexChanged" 
     DataTextField="Shortname" DataValueField="ID">
     </asp:DropDownList>`

 protected void Page_Load(object sender, EventArgs e)
 {
    if (!IsPostBack)
    {
      Bind_Users();
    }
 }

 private DataSet Bind_Users()
{
DataSet ds;
ds = cs.BindUsers();
if (ds.Tables[0] != null)
{
    if (ds.Tables[0].Rows.Count > 0)
    {
        ddl_username.DataSource = ds.Tables[0];
        ddl_username.DataTextField = "Shortname";
        ddl_username.DataValueField = "ID";
        ddl_username.DataBind();
        ListItem li = new ListItem();
        li.Text = "Select";
        li.Value = "-1";
        ddl_username.Items.Insert(0, li);
        ddl_username.SelectedIndex = 0;
    }
    //ddl_username.SelectedIndex = 0;
    //ddl_username.Text = "-----Select-----";
}
return ds;
}
4

1 に答える 1

0

電話をかけたい場合は、ポストバックBind_Users()で次を削除する必要があります。

if (!IsPostBack)
{
  Bind_Users();
}
于 2013-04-14T15:17:52.220 に答える