在章立民的书里看到的,的确是不错的技巧,一个gridview,一个detailview,很好的master-detail关系
在detailview中,还可以编辑,删除具体的信息,下面全部摘录之
前台:
<form runat="server">
<div>
<asp:ScriptManager runat="server">
</asp:ScriptManager>
<table>
<tr>
<td colspan="2">
请选择一个部门:<asp:DropDownList runat="server" AutoPostBack="True" DataSourceID="SqlDataSource1"
DataTextField="部门" DataValueField="部门" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
</asp:DropDownList><asp:SqlDataSource runat="server" ConnectionString="<%$ ConnectionStrings:chtNorthwind %>"
DataSourceMode="DataReader" SelectCommand="SELECT DISTINCT [部门] FROM [章立民工作室]"></asp:SqlDataSource>
</td>
</tr>
<tr>
<td valign="top" >
<asp:UpdatePanel runat="server" UpdateMode="Conditional"><ContentTemplate>
<asp:GridView runat="server" OnSelectedIndexChanged="GridView1_SelectedIndexChanged" DataSourceID="SqlDataSource2" OnSorted="GridView1_Sorted" OnRowDeleted="GridView1_RowDeleted" OnPageIndexChanged="GridView1_PageIndexChanged" ShowFooter="True" SelectedIndex="0" GridLines="None" ForeColor="#333333" Font-Size="Smaller" CellPadding="4" DataKeyNames="员工号码" AutoGenerateColumns="False" AllowSorting="True" AllowPaging="True">
<Columns>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton runat="server" CausesValidation="False" CommandName="Select"
Text="选取"></asp:LinkButton>
<asp:LinkButton runat="server" CausesValidation="False" CommandName="Delete"
OnClientClick="return confirm('您确定要删除此笔数据纪录吗?');" Text="删除"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="员工号码" HeaderText="员工号码" InsertVisible="False" ReadOnly="True"
SortExpression="员工号码" />
<asp:BoundField DataField="姓名" HeaderText="姓名" SortExpression="姓名" />
<asp:BoundField DataField="部门" HeaderText="部门" SortExpression="部门" />
</Columns>
<FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
<RowStyle BackColor="#FFFBD6" ForeColor="#333333" />
<SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" />
<PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" />
<HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView> <asp:SqlDataSource runat="server" SelectCommand="SELECT 员工号码, 姓名, 部门 FROM 章立民工作室 WHERE 部门 = @部门" ConnectionString="<%$ ConnectionStrings:chtNorthwind %>" DeleteCommand="DELETE FROM 章立民工作室 WHERE 员工号码 = @员工号码">
<DeleteParameters>
<asp:Parameter />
</DeleteParameters>
<SelectParameters>
<asp:ControlParameter ControlID="DropDownList1" PropertyName="SelectedValue" />
</SelectParameters>
</asp:SqlDataSource> <asp:Label runat="server"></asp:Label>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="DropDownList1" EventName="SelectedIndexChanged"></asp:AsyncPostBackTrigger>
</Triggers>
</asp:UpdatePanel>
</td>
<td valign="top" >
<asp:UpdatePanel runat="server"><ContentTemplate>
<asp:DetailsView runat="server" DataSourceID="SqlDataSource3" OnDataBound="DetailsView1_DataBound" GridLines="None" ForeColor="#333333" Font-Size="Smaller" CellPadding="4" DataKeyNames="员工号码" OnItemUpdated="DetailsView1_ItemUpdated" OnItemInserted="DetailsView1_ItemInserted" AutoGenerateRows="False">
<FooterStyle BackColor="#507CD1" ForeColor="White" Font-Bold="True"></FooterStyle>
<CommandRowStyle BackColor="#D1DDF1" Font-Bold="True"></CommandRowStyle>
<EditRowStyle BackColor="#2461BF"></EditRowStyle>
<RowStyle BackColor="#EFF3FB"></RowStyle>
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center"></PagerStyle>
<Fields>
<asp:BoundField ReadOnly="True" DataField="员工号码" InsertVisible="False" SortExpression="员工号码" HeaderText="员工号码:">
<HeaderStyle HorizontalAlign="Right"></HeaderStyle>
</asp:BoundField>
<asp:BoundField DataField="身份证号码" SortExpression="身份证号码" HeaderText="身份证号码:">
<HeaderStyle HorizontalAlign="Right"></HeaderStyle>
</asp:BoundField>
<asp:BoundField DataField="姓名" SortExpression="姓名" HeaderText="姓名:">
<HeaderStyle HorizontalAlign="Right"></HeaderStyle>
</asp:BoundField>
<asp:TemplateField SortExpression="性别" HeaderText="性别:"><EditItemTemplate>
<asp:DropDownList runat="server" SelectedValue='<%# Bind("性别") %>'>
<asp:ListItem>男</asp:ListItem>
<asp:ListItem>女</asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
<InsertItemTemplate>
<asp:DropDownList runat="server" SelectedValue='<%# Bind("性别") %>'>
<asp:ListItem>男</asp:ListItem>
<asp:ListItem>女</asp:ListItem>
</asp:DropDownList>
</InsertItemTemplate>