有一个表authors,其中有“state”一列。现在我已实现用GridView显示 
authors中的所有记录,其中state列与控件DropDownList关联。SELECT * FROM [authors] WHERE ([state] = @state) 
下拉列表框DropDownList显示authors表中的“state”列的值(SELECT DISTINCT [state] FROM [authors])。运行时点选其中“state”中的一个值时。就会显示相应值的记录。 
现在我想在下拉列表框DropDownList中新加一项“所有值”。运行时,除了上述功能外,点一下“所有值”就会显示所有的记录。 
请问我应该怎么做?

解决方案 »

  1.   

    增加一个"所有值"的绑定
    DropDownList ddl = new DropDownList(new ListItem("所有值", "all"));
    再绑定
    SELECT DISTINCT [state] FROM [authors]在DropDownList的OnChange事件里判断
    if (ddl.SelectItem.value == "all")
      //显示所有的记录
      

  2.   

    有一个属性是充许添加静态项,选为TRUE,余下的是从数据库BIND的。
      

  3.   

    二楼的做法可行,
      可以在DropDownList选项改变的时候做相应的判断
      

  4.   

    可在 
    if (!IsPostBack)
    {
    ...........
    Dropdownlist.Items.Insert(0, new ListItem("ALL", "ALL"));
    }
      

  5.   

    if (!IsPostBack)
    {
    //先绑定了你的DropDownList1
    DropDownList1.Items.Insert(0, new ListItem("ALL", "ALL"));
    }然后在你的绑定方法中根据DropDownList的Value的不同绑定不同的SQL语句