2013-08-05 74 views
1

我有四个dropdownlists,都依赖于之前的一个,使用ControlParameters和AutoPostBack =“true”,它们都工作完美 - 除了最后一个。出于某种原因,第四个不会显示我的硬编码的“--All--”项目,我需要这个,所以用户可以选择查看所有条目,或根据选定的值限制条目。任何意见非常感谢!我的下拉列表没有显示我的硬编码listitem

1(始终显示所有不同的值,再加上 “--All--” 选项):

<!-- Division (gt_division) --> 
<asp:DropDownList runat="server" ID="DDLDivision" DataSourceID="DSDivision" DataValueField="gt_division" DataTextField="gt_division" AppendDataBoundItems="true" AutoPostBack="true"> 
       <asp:ListItem Text="--All--" Value="" /> 
      </asp:DropDownList> 
      <asp:SqlDataSource ID="DSDivision" ConnectionString="<%$ ConnectionStrings:CDRConnectionString %>" runat="server" SelectCommand="select distinct gt_division from chg_dtl"> 
      </asp:SqlDataSource> 

2(正常工作,则下拉显示 '--All--'加上基于在所述第一下拉列表中选择(controlparameter gt_division)的不同值:

<!-- Program (bill_area) --> 
<asp:DropDownList runat="server" ID="DDLProgram" DataSourceID="DSProgram" DataValueField="bill_area" DataTextField="bill_area" AppendDataBoundItems="true" AutoPostBack="true"> 
       <asp:ListItem Text="--All--" Value="" /> 
      </asp:DropDownList> 
      <asp:SqlDataSource ID="DSProgram" ConnectionString="<%$ ConnectionStrings:CDRConnectionString %>" runat="server" SelectCommand="SELECT distinct bill_area FROM chg_dtl WHERE gt_division = @gt_division"> 
       <SelectParameters> 
        <asp:ControlParameter Name="gt_division" ControlID="DDLDivision" PropertyName="SelectedValue"/> 
       </SelectParameters> 
      </asp:SqlDataSource> 

3(也工作得很好,显示“--All--”加上基于前两个下拉菜单的值):

<!-- Location (pos_name) --> 
<asp:DropDownList runat="server" ID="DDLLocation" DataSourceID="DSLocation" DataValueField="pos_name" DataTextField="pos_name" AppendDataBoundItems="true" AutoPostBack="true"> 
       <asp:ListItem Text="--All--" Value="" /> 
      </asp:DropDownList> 
      <asp:SqlDataSource ID="DSLocation" ConnectionString="<%$ ConnectionStrings:CDRConnectionString %>" runat="server" SelectCommand="SELECT distinct pos_name FROM chg_dtl WHERE gt_division = @gt_division and bill_area = @bill_area" 
       > 
       <SelectParameters> 
        <asp:ControlParameter Name="gt_division" ControlID="DDLDivision" PropertyName="SelectedValue" /> 
        <asp:ControlParameter Name="bill_area" ControlID="DDLProgram" PropertyName="SelectedValue" /> 
       </SelectParameters> 
      </asp:SqlDataSource> 

4(示出了正确的不同的值(基于前三个下拉菜单),但不显示出对前面的下拉的回发的“--All--”选项。所以我选择Program,并且这个下拉列表中填充了正确的不同值,但是'--All--'缺失。我需要这个选项来让用户选择查看全部,而不仅仅是单个下拉选择的结果。我可能在后面的代码中做了一些事情,但宁愿保持所有下拉菜单都一样。 ):

<!-- Physician (BILLING_NAME) --> 
<asp:DropDownList runat="server" ID="DDLPhysician" DataSourceID="DSPhysician" DataValueField="billing_prov_name" DataTextField="billing_name" AppendDataBoundItem="true" AutoPostBack="true"> 
       <asp:ListItem Text="All" Value="" /> 
      </asp:DropDownList> 
      <asp:SqlDataSource ID="DSPhysician" ConnectionString="<%$ ConnectionStrings:CDRConnectionString %>" runat="server" 
       SelectCommand="SELECT distinct billing_name 
           FROM chg_dtl 
           WHERE gt_division = @gt_division AND bill_area = @bill_area AND pos_name = @pos_name" 
       > 
       <SelectParameters> 
        <asp:ControlParameter Name="gt_division" ControlID="DDLDivision" PropertyName="SelectedValue" /> 
        <asp:ControlParameter Name="bill_area" ControlID="DDLProgram" PropertyName="SelectedValue" /> 
        <asp:ControlParameter Name="pos_name" ControlID="DDLLocation" PropertyName="SelectedValue" /> 
       </SelectParameters> 
      </asp:SqlDataSource> 

回答

0

您在第4下拉列表,而不是 'AppendDataBoundItems'

+0

啊有 'AppendDataBoundItem'!两天拉我的头发,认为这是一种奇怪的asp后回问题。谢谢!!! – russds

+0

我们都去过那里:)。很高兴我能帮上忙。 – nycdan

相关问题