-1

我有 2 个 DropDownList,第一个有一个只有一个字段的 SqlDataSource,另一个 DropDownList 有一个 SqlDataSource,其中包含基于第一个下拉列表选择的 where 子句。

如果我按下一个按钮,第二个下拉列表会填充查询,但是在从第一个下拉列表中选择一个项目后如何让它填充。

4

4 回答 4

0

您可以处理SelectionChangeCommitted第一个组合框的事件。然后在构建数据源之后,您可以将其分配给您的第二个组合框。像下面

private void comboBox1_SelectionChangeCommitted(object sender, EventArgs e)
{
    //build your datasource with the query
    comboBox2.DataSource = datasource;
}
于 2013-08-14T17:38:56.007 回答
0

使用第一个下拉列表的选定索引更改事件填充第二个列表

于 2013-08-14T17:39:10.683 回答
0

通过将第二个下拉列表查询的方法添加到 selectionChangeCommited 事件,我得到了这个在我自己的项目中的一个工作。像这样的东西:

private void comboBox1_SelectionChangeCommitted(object sender, EventArgs e)
    {
        fillComboBox2();
    }
于 2013-08-14T17:44:34.310 回答
0
private void comboBox1_SelectionChangeCommitted(object sender, EventArgs e)
{
  //Your SqlDataSource must have a parameter for selecting its records ("YourParameter")
  //P.E. the SqlDataSource SelectCommand looks like this:
  //"SELECT [id], [name] FROM [table] WHERE [id] = @YourParameter"
  //Include a selectparameter <asp:Parameter Name="YourParameter" Type="Int32" />
  //inside your SqlDataSource. Next, do this:
  sqldatasource2.SelectParameters("YourParameter").DefaultValue = comboBox1.SelectedValue
  comboBox2.DataSource = sqldatasource2.Select(DataSourceSelectArguments.Empty)
  comboBox2.DataBind()
}
于 2013-08-14T19:29:07.383 回答