Data binding provides a way for developers to create a read/write link between the controls on a form and the data in the application. Data binding is used within applications to take advantage of data stored in databases. DataTable object is the representation of a table, with rows and columns, in ADO.NET. DataTable contains two collections: DataColumn , representing the columns of data in a given table (which ultimately determine the kinds of data that can be entered into that table), and DataRow , representing the rows of data in a given table


 


DataView provides a layer of indirection between the actual data and its display format, thereby enabling the programmer to apply sorts and filter rows without modifying the underlying information—that is, to have different “views” on the same data. The DataViewManager on the other hand represents a view on the entire DataSet. One of the most useful aspects of the DataView is the ability to create multiple DataView objects to provide different representations of the same data. The following simple example with three separate Grid View controls illustrates the same. Each DataView applies a different SQL filter expression using the RowFilter property and each of them contains only a subset of the full data in the DataTable. If a row is modified in one view, the changes appear automatically in all other views because, there is only one data source—the linked DataTable


 


Example: Demonstrate Multiple View


 


 


DataSynchronization.aspx


 


<% @ Page Language ="C#" AutoEventWireup ="true" CodeFile ="DataSynchronization.aspx.cs" Inherits ="DataSynchronization" %>


 


<! 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">


</head >


<body >


<form id ="form1" runat ="server">


<div>


<strong> Displaying Multiple Views


</strong>


<br/>


< br />


<asp:GridView ID ="grdvStore" runat ="server" AutoGenerateColumns ="False" CellPadding ="4" ForeColor ="#333333" GridLines ="None">


< FooterStyle BackColor ="#1C5E55" Font-Bold ="True" ForeColor ="White" />


<Columns>


<asp:BoundField DataField ="stor_id" HeaderText ="Store ID" />


<asp:BoundField DataField ="stor_address" HeaderText ="Address" />


<asp:BoundField DataField ="city" HeaderText ="City" />


<asp:BoundField DataField ="state" HeaderText ="State" />


</Columns>


<RowStyle BackColor ="#E3EAEB" />


<EditRowStyle BackColor ="#7C6F57" />


<SelectedRowStyle BackColor ="#C5BBAF" Font-Bold ="True" ForeColor ="#333333" />


<PagerStyle BackColor ="#666666" ForeColor ="White" HorizontalAlign ="Center" />


<HeaderStyle BackColor ="#1C5E55" Font-Bold ="True" ForeColor ="White" />


<AlternatingRowStyle BackColor ="White" />


</asp:GridView>


< br />


<asp:Button ID ="Button1" runat ="server" OnClick ="Button1_Click" Text ="Displaying Multiple Views" />


< br />


< br />


<asp:GridView ID ="grdvSecond" runat ="server" AutoGenerateColumns ="False" BackColor ="LightGoldenrodYellow" BorderColor ="Tan" BorderWidth ="1px" CellPadding ="2" ForeColor ="Black" GridLines ="None">


<FooterStyle BackColor ="Tan" />


<Columns>


<asp:BoundField DataField ="stor_id" HeaderText ="Store ID" />


<asp : BoundField DataField ="stor_address" HeaderText ="Address" />


<asp : BoundField DataField ="city" HeaderText ="City" />


<asp : BoundField DataField ="state" HeaderText ="State" />


</Columns>


<SelectedRowStyle BackColor ="DarkSlateBlue" ForeColor ="GhostWhite" />


<PagerStyle BackColor ="PaleGoldenrod" ForeColor ="DarkSlateBlue" HorizontalAlign ="Center" />


<HeaderStyle BackColor ="Tan" Font-Bold ="True" />


<AlternatingRowStyle BackColor ="PaleGoldenrod" />


</asp:GridView>


<br/>


<asp:GridView ID ="grdvThird" runat ="server" AutoGenerateColumns ="False" BackColor ="LightGoldenrodYellow" BorderColor ="Tan" BorderWidth ="1px" CellPadding ="2" ForeColor ="Black" GridLines ="None">


<FooterStyle BackColor ="Tan" />


<Columns>


<asp:BoundField DataField ="stor_id" HeaderText ="Store ID" />


<asp:BoundField DataField ="stor_address" HeaderText ="Address" />


<asp:BoundField DataField ="City" HeaderText ="City" />


<asp:BoundField DataField ="state" HeaderText ="State" />


</Columns>


<SelectedRowStyle BackColor ="DarkSlateBlue" ForeColor ="GhostWhite" />


<PagerStyle BackColor ="PaleGoldenrod" ForeColor ="DarkSlateBlue" HorizontalAlign ="Center" />


<HeaderStyle BackColor ="Tan" Font-Bold ="True" />


<AlternatingRowStyle BackColor ="PaleGoldenrod" />


</asp:GridView>


&nbsp; &nbsp;&nbsp; &nbsp; </div>


</form>


</body>


</html>


 


 


 


DataSynchronization.aspx.cs


 


using System;


using System.Data;


using System.Configuration;


using System.Collections;


using System.Web;


using System.Web.Security;


using System.Web.UI;


using System.Web.UI.WebControls;


using System.Web.UI.WebControls.WebParts;


using System.Web.UI.HtmlControls;


using System.Data.SqlClient;


 


public partial class DataSynchronization : System.Web.UI. Page


{


  protected void Page_Load( object sender, EventArgs e)


    { // GridView


    string strConn = "Data Source=localhost;Initial Catalog= pubs; user Id=sa;Password = test " ;


    string sqlQuery = "select * from stores" ;


    SqlConnection conn = new SqlConnection (strConn);


    SqlDataAdapter ada = new SqlDataAdapter (sqlQuery, conn);


    DataSet dstStore = new DataSet ();


    ada.Fill(dstStore, "Stores" );


    //Bind GridView


    grdvStore.DataSource = dstStore.Tables[ "Stores" ];


    // grdvStore.DataSource = dstStore.DefaultViewManager;


    grdvStore.DataBind();


    }


  protected void Button1_Click( object sender, EventArgs e)


    { //Displaying Multiple Views


    string strConn = "Data Source=localhost;Initial Catalog=pubs;user Id=sa;Password= test" ;


    string sqlQuery = "select * from stores" ;


    SqlConnection conn = new SqlConnection (strConn);


    SqlDataAdapter ada = new SqlDataAdapter (sqlQuery, conn);


    DataSet dstStore = new DataSet ();


    ada.Fill(dstStore, "Stores" );


    //Multiple DataView Object


    DataView dvFirst = new DataView (dstStore.Tables[ "Stores" ]);


    DataView dvSecond = new DataView (dstStore.Tables[ "Stores" ]);


    //Filter Views


    dvFirst.RowFilter = "state = 'CA'" ;


    dvSecond.RowFilter = "state = 'WA'" ;


    //Bind GridView : Only 'CA' state


    grdvSecond.DataSource = dvFirst;


    grdvSecond.DataBind();


    //Bind GridView : Only 'WA' state


    grdvThird.DataSource = dvSecond;


    grdvThird.DataBind();


    }


}


 


 


 


Output


 


 


                    

Copyright © 2012 VisualBuilder. All rights reserved