如何在列表框中显示项目

时间:2009-03-24 10:46:08

标签: c# .net listbox drop-down-menu

如何在下拉列表中选择特定项目时显示列表框中的项目列表。

示例:thiru是一名开发人员,他完成了一些模块。     在下拉列表中有一个开发人员列表,同时在此列表中选择thiru我想显示thiru完成的所有模块,可以在列表框中列出

我正在使用Visual Studio 2008,C#和ASP.Net

谢谢

2 个答案:

答案 0 :(得分:0)

在列表框中,将项目数据绑定到数据源,并使用下拉列表中的值添加参数。

这大致是你需要做的。

    <form id="form1" runat="server">
    <div>

    <asp:ListBox ID="ListBox1" runat="server" DataSourceID="listDataSource" 
        DataTextField="Field" DataValueField="Field"></asp:ListBox>
        <asp:SqlDataSource ID="listDataSource" runat="server" 
            ConnectionString="<%$ ConnectionStrings:XXXX %>" 
            SelectCommand=
                "SELECT [Field] FROM [LisotOfModules] WHERE ([DevID] = @DevID)">
            <SelectParameters>
                <asp:ControlParameter ControlID="DropDownList1" Name="DevID" 
                    PropertyName="SelectedValue" Type="Int32" />
            </SelectParameters>
        </asp:SqlDataSource>

   </div>
   <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" 
        DataSourceID="ddlDatasource" DataTextField="DevID" 
        DataValueField="DevID">
   </asp:DropDownList>
   <asp:SqlDataSource ID="ddlDatasource" runat="server" 
        ConnectionString="<%$ ConnectionStrings:XXX %>" 
        SelectCommand="SELECT [DevID] FROM [Developers]">
   </asp:SqlDataSource>
   </form>

答案 1 :(得分:0)

如果您的数据源只是一个列表或类似的,您只需执行以下操作:

myListBox.DataSource = myDataSource;
myListBox.DataBind();

如果您的数据源是类或类列表,则需要指定要显示的属性以及要设置的值。

如上所述:

myListBox.DataSource = myDataSource;
myListBox.DataTextField = "MyPropertyNameOnMyClass"; //This will be displayed
myListBox.DataValueField = "MyValuePropertyOnMyClass";
myListBox.DataBind();