Displaying a Master/Detail form with the DetailsView control.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<script runat="server">
void Page_Load()
{
if (!Page.IsPostBack)
grdProducts.SelectedIndex = 0;
}
protected void dtlProducts_ItemUpdated(object sender, DetailsViewUpdatedEventArgs e)
{
grdProducts.DataBind();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<form id="form1" runat="server">
<div class="content">
<div class="column">
<asp:GridView
id="grdProducts"
DataSourceID="srcProducts"
DataKeyNames="Id"
AutoGenerateSelectButton="true"
Runat="server" />
</div>
<div class="column">
<asp:DetailsView
id="dtlProducts"
DefaultMode="Edit"
AutoGenerateEditButton="true"
AllowPaging="true"
DataSourceID="srcProductDetails"
DataKeyNames="Id"
Runat="server" OnItemUpdated="dtlProducts_ItemUpdated" />
<asp:SqlDataSource
id="srcProducts"
ConnectionString="<%$ ConnectionStrings:Products %>"
SelectCommand="SELECT Id,Title FROM Products"
Runat="server" />
</div>
<asp:SqlDataSource
id="srcProductDetails"
ConnectionString="<%$ ConnectionStrings:Products %>"
SelectCommand="SELECT Id,Title,Director,InStocks FROM Products WHERE Id=@ProductId"
UpdateCommand="UPDATE Products SET Title=@Title,Director=@Director, InStocks=@InStocks WHERE Id=@Id"
Runat="server">
<SelectParameters>
<asp:ControlParameter Name="ProductId" ControlID="grdProducts" />
</SelectParameters>
</asp:SqlDataSource>
</div>
</form>
</body>
</html>
File: Web.config
<configuration>
<connectionStrings>
<add name="Products"
connectionString="Data Source=.\SQLEXPRESS;
AttachDbFilename=|DataDirectory|MyDatabase.mdf;Integrated Security=True;User Instance=True" />
</connectionStrings>
</configuration>
Related examples in the same category