1

我创建 Web 应用程序。我添加下拉列表。我将列表与表类别名称连接起来。例如 1、2、3。当我选择值 1 时,应创建填充有表 1 数据的网格视图。当我选择 2 时,创建填充有表 2 数据的网格视图。我连接 SQL 数据库中的表。PrimaryKey 类别ID,外键1,外键2。

我知道如何通过在下拉列表中选择值来填充网格视图,但是从一个表中选择值。在这种情况下,我有 4 张桌子,我不知道如何实现这一点。有人可以帮助我吗?通过一些教程或一段代码?谢谢

4

1 回答 1

1

试试这个...

页面:

<body>
    <form runat="server">
    <asp:DropDownList runat="server" ID="ddlDb" AutoPostBack="True" OnSelectedIndexChanged="ddlDb_SelectedIndexChanged">
        <asp:ListItem Text="-- Select --" Value=""></asp:ListItem>
        <asp:ListItem Text="Students" Value="Students"></asp:ListItem>
        <asp:ListItem Text="Classes" Value="Classes"></asp:ListItem>
    </asp:DropDownList>
    <asp:GridView ID="GridView1" runat="server">
    </asp:GridView>
    </form>
</body>

aspx.cs:

protected void ddlDb_SelectedIndexChanged(object sender, EventArgs e)
{
    if (!string.IsNullOrEmpty(ddlDb.SelectedValue))
    {
        var dbPath = Server.MapPath(@"\App_Data\Database1.mdf");
        var scon = "Data Source=.\\SQLEXPRESS;AttachDbFilename='" + dbPath + "';Integrated Security=True;User Instance=True";
        var cmd = "select * from " + ddlDb.SelectedValue;

        var dt = new DataTable();
        var da = new SqlDataAdapter(cmd, scon);
        da.Fill(dt);

        GridView1.DataSource = dt;
        GridView1.DataBind();                
    }
}

在此处输入图像描述

在此处输入图像描述

于 2012-06-02T06:18:22.557 回答