如何在组合框项目选择中动态填充GridView?

时间:2014-08-06 07:47:26

标签: c# asp.net gridview combobox

我正在使用 Microsoft Visual Studio 在.net framework 4.5上构建ASP.NET网站。我有一个用于存储图像路径的SQL Server数据库(mdf)文件。现在在组合框中选择一个类别,我想用图像动态填充GridView控件。怎么做?如下的Combobox代码似乎不起作用。 ASP代码

<cc1:ComboBox OnSelectedIndexChanged="ComboBox1_SelectedIndexChanged" ID="ComboBox1" runat="server"></cc1:ComboBox>
<asp:GridView ID="dg1" runat="server" AutoGenerateColumns="False" >

<Columns>

    <asp:TemplateField HeaderText="No">
        <ItemTemplate>
            <%#Eval("Id") %>
        </ItemTemplate>
    </asp:TemplateField>

    <asp:TemplateField HeaderText="image">
        <ItemTemplate>
            <asp:Image ID="I1" runat="server" ImageUrl='<%# Eval("Image") %>' Width="240" Height="80" />
        </ItemTemplate>
    </asp:TemplateField>

    <asp:TemplateField HeaderText="Category">
        <ItemTemplate>
           <%#Eval("Category")%>
        </ItemTemplate>
    </asp:TemplateField>

</Columns>

ComboBox1_SelectedIndexChanged ”事件的C#代码

SqlConnection cn = new SqlConnection(RachanaC.cn);
        cn.Open();

        //View images code

        string ddl = "select * from Images where Category ='" + ComboBox1.SelectedItem.Text + "'";

        SqlDataAdapter adp1 = new SqlDataAdapter(ddl, cn);
        DataTable dt2 = new DataTable();
        adp1.Fill(dt2);

        dg1.DataSource = dt2;
        dg1.DataBind();

        cn.Close();

问题出现了,无论我在ComboBox中选择哪个项目,它总是传递“ddl”字符串中的第一个项目。

0 个答案:

没有答案