Saturday, 9 March 2013

How to use DataView AddNew Method to add a new row to the DataView in ado.net

<%@ Page Language="C#" AutoEventWireup="true" %>  
<%@ Import Namespace="System.Data" %>  
  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<script runat="server">  
    protected void Button1_Click(object sender, System.EventArgs e)  
    {  
        DataTable dt = new DataTable();  
        dt.TableName = "Books";  
  
        DataColumn dc1 = new DataColumn();  
        dc1.ColumnName = "BookID";  
        dc1.DataType = typeof(int);  
        dc1.AllowDBNull = false;  
        dc1.Unique = true;  
  
        DataColumn dc2 = new DataColumn();  
        dc2.ColumnName = "Category";  
        dc2.DataType = typeof(string);  
  
        DataColumn dc3 = new DataColumn();  
        dc3.ColumnName = "BookName";  
        dc3.DataType = typeof(string);  
  
        DataColumn dc4 = new DataColumn();  
        dc4.ColumnName = "Author";  
        dc4.DataType = typeof(string);  
  
        dt.Columns.AddRange(new DataColumn[] { dc1, dc2, dc3, dc4 });  
  
        dt.Rows.Add(new object[] { 1, "Joomla", "Joomla! 1.5 JavaScript jQuery", "Jose Argudo Blanco" });  
        dt.Rows.Add(new object[] { 2, "jQuery", "ASP.NET jQuery Cookbook", "Sonal Aneel Allana" });  
        dt.AcceptChanges();  
  
        GridView1.DataSource = dt.DefaultView;  
        GridView1.DataBind();  
  
        //this line create a new DataView  
        DataView dView = new DataView(dt);  
        dView.Sort = "BookName DESC" ;  
  
        Label1.Text = "Here we create a new DataView<br />" +  
                      "and set the sort order (BookName DESC)";  
  
        GridView2.DataSource = dView;  
        GridView2.DataBind();  
  
        DataRowView drv = dView.AddNew();  
        drv["BookID"] = 3;  
        drv["Category"] = "Games";  
        drv["BookName"] = "Unity Game Development Essentials";  
        drv["Author"] = "Will Goldstone";  
        drv.EndEdit();  
  
        Label2.Text = "Here we add a new row to the DataView, Now the DataView is...";  
        GridView3.DataSource = dView;  
        GridView3.DataBind();  
  
        Label3.Text = "Now the source DataTable is...";  
        GridView4.DataSource = dt;  
        GridView4.DataBind();  
    }  
</script>  
  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head id="Head1" runat="server">  
    <title>How to use DataView AddNew Method to add a new row to the DataView in ado.net</title>  
</head>  
<body>  
    <form id="form1" runat="server">  
    <div>  
        <h2 style="color:DarkBlue; font-style:italic;">  
            How to use DataView AddNew Method  
            <br /> to add a new row to the DataView in ado.net  
        </h2>  
        <hr width="575" align="left" color="CornFlowerBlue" />  
        <asp:GridView   
            ID="GridView1"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="700"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="DarkBlue" Height="30" />  
            <RowStyle BackColor="Orange" />  
            <AlternatingRowStyle BackColor="DarkOrange" />  
        </asp:GridView>  
        <asp:Label  
             ID="Label1"  
             runat="server"  
             Font-Size="Large"  
             ForeColor="DodgerBlue"  
             Font-Italic="true"  
             >  
        </asp:Label>  
        <asp:GridView   
            ID="GridView2"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="700"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="CadetBlue" Height="30" />  
            <RowStyle BackColor="Orange" />  
            <AlternatingRowStyle BackColor="DarkOrange" />  
        </asp:GridView>  
        <asp:Label  
             ID="Label2"  
             runat="server"  
             Font-Size="Large"  
             ForeColor="DodgerBlue"  
             Font-Italic="true"  
             >  
        </asp:Label>  
        <asp:GridView   
            ID="GridView3"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="700"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="CadetBlue" Height="30" />  
            <RowStyle BackColor="Orange" />  
            <AlternatingRowStyle BackColor="DarkOrange" />  
        </asp:GridView>  
        <asp:Label  
             ID="Label3"  
             runat="server"  
             Font-Size="Large"  
             ForeColor="DodgerBlue"  
             Font-Italic="true"  
             >  
        </asp:Label>  
        <asp:GridView   
            ID="GridView4"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="700"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="DarkBlue" Height="30" />  
            <RowStyle BackColor="Orange" />  
            <AlternatingRowStyle BackColor="DarkOrange" />  
        </asp:GridView>  
        <asp:Button   
            ID="Button1"  
            runat="server"  
            OnClick="Button1_Click"  
            Text="Populate GridView"  
            Height="45"  
            Font-Bold="true"  
            ForeColor="DodgerBlue"  
            />  
    </div>  
    </form>  
</body>  

</html> 

Using AllowEdit property - how to edit update row in a DataView in ado.net

<%@ Page Language="C#" AutoEventWireup="true" %>  
<%@ Import Namespace="System.Data" %>  
  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<script runat="server">  
    protected void Button1_Click(object sender, System.EventArgs e)  
    {  
        DataTable dt = new DataTable();  
        dt.TableName = "Books";  
  
        DataColumn dc1 = new DataColumn();  
        dc1.ColumnName = "BookID";  
        dc1.DataType = typeof(int);  
        dc1.AllowDBNull = false;  
        dc1.Unique = true;  
  
        DataColumn dc2 = new DataColumn();  
        dc2.ColumnName = "Category";  
        dc2.DataType = typeof(string);  
  
        DataColumn dc3 = new DataColumn();  
        dc3.ColumnName = "BookName";  
        dc3.DataType = typeof(string);  
  
        DataColumn dc4 = new DataColumn();  
        dc4.ColumnName = "Author";  
        dc4.DataType = typeof(string);  
  
        dt.Columns.AddRange(new DataColumn[] { dc1, dc2, dc3, dc4 });  
  
        dt.Rows.Add(new object[] { 1, ".NET", "ASP.NET 3.5 Application Architecture and Design", "Vivek Thakur" });  
        dt.Rows.Add(new object[] { 2, "Games", "Cocos2d for iPhone 0.99 Beginner's Guide", "Pablo Ruiz" });  
        dt.AcceptChanges();  
  
        GridView1.DataSource = dt.DefaultView;  
        GridView1.DataBind();  
  
        //this line create a new DataView  
        DataView dView = new DataView(dt);  
        dView.Sort = "BookName DESC" ;  
  
        Label1.Text = "Here we create a new DataView<br />" +  
                      "and set the sort order (BookName DESC)";  
  
        GridView2.DataSource = dView;  
        GridView2.DataBind();  
  
        dView.AllowEdit = true;  
        //this line edit a row in DataView which index is 0  
        dView[0]["Category"] = ".NET";  
        dView[0]["BookName"] = "Microsoft Windows Workflow Foundation 4.0 Cookbook";  
        dView[0]["Author"] = "Andrew Zhu ";  
  
        Label2.Text = "Here we edit a row in DataView, Now the DataView is...";  
        GridView3.DataSource = dView;  
        GridView3.DataBind();  
  
        Label3.Text = "Now the source DataTable is...";  
        GridView4.DataSource = dt;  
        GridView4.DataBind();  
    }  
</script>  
  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head id="Head1" runat="server">  
    <title>Using AllowEdit property - how to edit update row in a DataView in ado.net</title>  
</head>  
<body>  
    <form id="form1" runat="server">  
    <div>  
        <h2 style="color:DarkBlue; font-style:italic;">  
            Using AllowEdit property - how to  
            <br /> edit update row in a DataView in ado.net  
        </h2>  
        <hr width="450" align="left" color="CornFlowerBlue" />  
        <asp:GridView   
            ID="GridView1"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="700"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="DarkMagenta" Height="30" />  
            <RowStyle BackColor="DarkKhaki" />  
            <AlternatingRowStyle BackColor="DarkOliveGreen" />  
        </asp:GridView>  
        <asp:Label  
             ID="Label1"  
             runat="server"  
             Font-Size="Large"  
             ForeColor="DodgerBlue"  
             Font-Italic="true"  
             >  
        </asp:Label>  
        <asp:GridView   
            ID="GridView2"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="700"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="Maroon" Height="30" />  
            <RowStyle BackColor="DarkKhaki" />  
            <AlternatingRowStyle BackColor="DarkOliveGreen" />  
        </asp:GridView>  
        <asp:Label  
             ID="Label2"  
             runat="server"  
             Font-Size="Large"  
             ForeColor="DodgerBlue"  
             Font-Italic="true"  
             >  
        </asp:Label>  
        <asp:GridView   
            ID="GridView3"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="700"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="Maroon" Height="30" />  
            <RowStyle BackColor="DarkKhaki" />  
            <AlternatingRowStyle BackColor="DarkOliveGreen" />  
        </asp:GridView>  
        <asp:Label  
             ID="Label3"  
             runat="server"  
             Font-Size="Large"  
             ForeColor="DodgerBlue"  
             Font-Italic="true"  
             >  
        </asp:Label>  
        <asp:GridView   
            ID="GridView4"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="700"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="DarkMagenta" Height="30" />  
            <RowStyle BackColor="DarkKhaki" />  
            <AlternatingRowStyle BackColor="DarkOliveGreen" />  
        </asp:GridView>  
        <asp:Button   
            ID="Button1"  
            runat="server"  
            OnClick="Button1_Click"  
            Text="Populate GridView"  
            Height="45"  
            Font-Bold="true"  
            ForeColor="DodgerBlue"  
            />  
    </div>  
    </form>  
</body>  

</html> 

How to use DataView Delete Method to delete a row at the specified index in ado.net

<%@ Page Language="C#" AutoEventWireup="true" %>  
<%@ Import Namespace="System.Data" %>  
  
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<script runat="server">  
    protected void Button1_Click(object sender, System.EventArgs e)  
    {  
        DataTable dt = new DataTable();  
        dt.TableName = "Books";  
  
        DataColumn dc1 = new DataColumn();  
        dc1.ColumnName = "BookID";  
        dc1.DataType = typeof(int);  
        dc1.AllowDBNull = false;  
        dc1.Unique = true;  
  
        DataColumn dc2 = new DataColumn();  
        dc2.ColumnName = "Category";  
        dc2.DataType = typeof(string);  
  
        DataColumn dc3 = new DataColumn();  
        dc3.ColumnName = "BookName";  
        dc3.DataType = typeof(string);  
  
        DataColumn dc4 = new DataColumn();  
        dc4.ColumnName = "Author";  
        dc4.DataType = typeof(string);  
  
        dt.Columns.AddRange(new DataColumn[] { dc1, dc2, dc3, dc4 });  
  
        dt.Rows.Add(new object[] { 1, "jQuery", "CMS Design Using PHP and jQuery", "Kae Verens" });  
        dt.Rows.Add(new object[] { 2, "iPhone", "iPhone Applications Tune-Up", "Loyal Moses" });  
        dt.Rows.Add(new object[] { 3, "jQuery", "jQuery Mobile First Look: RAW", "Giulio Bai" });  
        dt.AcceptChanges();  
  
        GridView1.DataSource = dt.DefaultView;  
        GridView1.DataBind();  
  
        //this line create a new DataView  
        DataView dView = new DataView(dt);  
        dView.Sort = "BookName DESC" ;  
  
        Label1.Text = "Here we create a new DataView<br />" +  
                      "and set the sort order (BookName DESC)";  
  
        GridView2.DataSource = dView;  
        GridView2.DataBind();  
  
        //this line delete a row from DataView which index is 1  
        dView.Delete(1);  
  
        Label2.Text = "Here we delete a row from DataView, Now the DataView is...";  
        GridView3.DataSource = dView;  
        GridView3.DataBind();  
  
        Label3.Text = "Now the source DataTable is...";  
        GridView4.DataSource = dt;  
        GridView4.DataBind();  
    }  
</script>  
  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head id="Head1" runat="server">  
    <title>How to use DataView Delete Method to delete a row at the specified index in ado.net</title>  
</head>  
<body>  
    <form id="form1" runat="server">  
    <div>  
        <h2 style="color:DarkBlue; font-style:italic;">  
            How to use DataView Delete Method  
            <br /> to delete a row at the specified index in ado.net  
        </h2>  
        <hr width="575" align="left" color="CornFlowerBlue" />  
        <asp:GridView   
            ID="GridView1"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="575"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="DarkOrchid" Height="30" />  
            <RowStyle BackColor="HotPink" />  
            <AlternatingRowStyle BackColor="DeepPink" />  
        </asp:GridView>  
        <asp:Label  
             ID="Label1"  
             runat="server"  
             Font-Size="Large"  
             ForeColor="DodgerBlue"  
             Font-Italic="true"  
             >  
        </asp:Label>  
        <asp:GridView   
            ID="GridView2"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="575"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="Navy" Height="30" />  
            <RowStyle BackColor="HotPink" />  
            <AlternatingRowStyle BackColor="DeepPink" />  
  
        </asp:GridView>  
        <asp:Label  
             ID="Label2"  
             runat="server"  
             Font-Size="Large"  
             ForeColor="DodgerBlue"  
             Font-Italic="true"  
             >  
        </asp:Label>  
        <asp:GridView   
            ID="GridView3"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="575"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="Navy" Height="30" />  
            <RowStyle BackColor="HotPink" />  
            <AlternatingRowStyle BackColor="DeepPink" />  
        </asp:GridView>  
        <asp:Label  
             ID="Label3"  
             runat="server"  
             Font-Size="Large"  
             ForeColor="DodgerBlue"  
             Font-Italic="true"  
             >  
        </asp:Label>  
        <asp:GridView   
            ID="GridView4"  
            runat="server"  
            BorderColor="Snow"  
            ForeColor="Snow"  
            Width="575"  
            Font-Names="Courier"  
            >  
            <HeaderStyle BackColor="DarkOrchid" Height="30" />  
            <RowStyle BackColor="HotPink" />  
            <AlternatingRowStyle BackColor="DeepPink" />  
        </asp:GridView>  
        <asp:Button   
            ID="Button1"  
            runat="server"  
            OnClick="Button1_Click"  
            Text="Populate GridView"  
            Height="45"  
            Font-Bold="true"  
            ForeColor="DodgerBlue"  
            />  
    </div>  
    </form>  
</body>  

</html>