ASP.NET中 DropDownList+Repeater的使用前台绑定

ylbtech-ASP.NET-Control-Bind:DropDownList+Repeater 的使用前台绑定

 ASP.NET中 DropDownList+Repeater的使用前台绑定。

1.A,运行效果图返回顶部
1.B,源代码返回顶部
View Code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DropRpt.aspx.cs" Inherits="DropRpt" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>无标题页</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    请选择大分类:<asp:DropDownList ID="drop" runat="server" DataSourceID="SqlDataSource1" 
            DataTextField="CategoryName" DataValueField="CategoryID" 
            AutoPostBack="True">
        </asp:DropDownList>
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
            ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>" 
            SelectCommand="SELECT [CategoryID], [CategoryName] FROM [Categories]">
        </asp:SqlDataSource>
        <hr />
        该分类下的产品:
        <table border="1">
            <tr>
                <td>产品编号</td>
                <td>产品名称</td>
                <td>分类编号</td>
                <td>单价</td>
            </tr>
            <asp:Repeater ID="rpt" runat="server" DataSourceID="SqlDataSource2">
                <ItemTemplate>
                    <tr>
                        <td><%#Eval("ProductID")%></td>
                        <td><%#Eval("ProductName")%></td>
                        <td><%#Eval("CategoryID")%></td>
                        <td><%#Eval("UnitPrice")%></td>
                    </tr>
                </ItemTemplate>
                </asp:Repeater>
        </table>
        
        <asp:SqlDataSource ID="SqlDataSource2" runat="server" 
            ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>" 
            DeleteCommand="DELETE FROM [Products] WHERE [ProductID] = @original_ProductID AND [ProductName] = @original_ProductName AND (([CategoryID] = @original_CategoryID) OR ([CategoryID] IS NULL AND @original_CategoryID IS NULL)) AND (([UnitPrice] = @original_UnitPrice) OR ([UnitPrice] IS NULL AND @original_UnitPrice IS NULL))" 
            InsertCommand="INSERT INTO [Products] ([ProductName], [CategoryID], [UnitPrice]) VALUES (@ProductName, @CategoryID, @UnitPrice)" 
            SelectCommand="SELECT [ProductID], [ProductName], [CategoryID], [UnitPrice] FROM [Products] WHERE ([CategoryID] = @CategoryID) ORDER BY [ProductID] DESC" 
            
            UpdateCommand="UPDATE [Products] SET [ProductName] = @ProductName, [CategoryID] = @CategoryID, [UnitPrice] = @UnitPrice WHERE [ProductID] = @original_ProductID AND [ProductName] = @original_ProductName AND (([CategoryID] = @original_CategoryID) OR ([CategoryID] IS NULL AND @original_CategoryID IS NULL)) AND (([UnitPrice] = @original_UnitPrice) OR ([UnitPrice] IS NULL AND @original_UnitPrice IS NULL))" 
            ConflictDetection="CompareAllValues" 
            OldValuesParameterFormatString="original_{0}">
            <SelectParameters>
                <asp:ControlParameter ControlID="drop" DefaultValue="1" Name="CategoryID" 
                    PropertyName="SelectedValue" Type="Int32" />
            </SelectParameters>
            <DeleteParameters>
                <asp:Parameter Name="original_ProductID" Type="Int32" />
                <asp:Parameter Name="original_ProductName" Type="String" />
                <asp:Parameter Name="original_CategoryID" Type="Int32" />
                <asp:Parameter Name="original_UnitPrice" Type="Decimal" />
            </DeleteParameters>
            <UpdateParameters>
                <asp:Parameter Name="ProductName" Type="String" />
                <asp:Parameter Name="CategoryID" Type="Int32" />
                <asp:Parameter Name="UnitPrice" Type="Decimal" />
                <asp:Parameter Name="original_ProductID" Type="Int32" />
                <asp:Parameter Name="original_ProductName" Type="String" />
                <asp:Parameter Name="original_CategoryID" Type="Int32" />
                <asp:Parameter Name="original_UnitPrice" Type="Decimal" />
            </UpdateParameters>
            <InsertParameters>
                <asp:Parameter Name="ProductName" Type="String" />
                <asp:Parameter Name="CategoryID" Type="Int32" />
                <asp:Parameter Name="UnitPrice" Type="Decimal" />
            </InsertParameters>
        </asp:SqlDataSource>
    </div>
    </form>
</body>
</html>
/web.config
<connectionStrings>
        <add name="NorthwindConnectionString" connectionString="Data
                    Source=.;Initial Catalog=Northwind;Integrated Security=True"
                        providerName="System.Data.SqlClient"/>
    </connectionStrings>
1.C,资源下载返回顶部

https://files.cnblogs.com/ylbtech/WebForm-Drop-XList.rar

warn 作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted on 2013-03-05 11:09  ylbtech  阅读(1721)  评论(0编辑  收藏  举报