<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!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"> <script type="text/javascript"> function emptytxtboxvalidation(a,b,c) { if(document.getElementById(a).value=="") { alert("enter student id"); document.getElementById(a).focus(); return false; } if(document.getElementById(b).value=="") { alert("enter student name"); document.getElementById(b).focus(); return false; } if(document.getElementById(c).value=="") { alert("enter student marks"); document.getElementById(c).focus(); return false; } if (document.getElementById(a).value!="" || document.getElementById(b).value!="" ||document.getElementById(c).value!="" ) { alert("Correct data-You can Now Insert the data"); return false; } return true; } </script> <title>Untitled Page</title> </head> <body> <form id="form1" runat="server"> <h2 style="color: blue; font-style: normal"> Order gridview <br /> in asp.net </h2> <div style="text-align: center"> <table style="height: 450px; width: 616px"> <tr> <td> <table> <tr> <td> <asp:LinkButton ID="lnkAddNewRow" runat="server" OnClick="lnkAddNewRow_Click">AddNewRow</asp:LinkButton> <asp:Button ID="btnIns" runat="server" Text="Insert" CommandName="Insert" OnClick="btnIns_Click" /> <asp:Button ID="btnvalidate" runat="server" Text="Validate" /> <asp:Button ID="btnCancelInsert" runat="server" Text="Cancel Insertion" Visible="false" OnClick="btnCancelInsert_Click" /> </td> </tr> </table> </td> </tr> <tr> <td> <table width="500px" style="height: 327px"> <tr> <td> <asp:GridView ID="grdOrdering" runat="server" DataKeyNames="sid" AutoGenerateColumns="False" Width="555px" OnRowDataBound="grdOrdering_RowDataBound" OnRowCommand="grdOrdering_RowCommand"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:Button ID="BtnDel" runat="server" Text="Delete" CommandName="DeleteOne" /> <asp:Button ID="btnUpdate" runat="server" Text="Update" CommandName="UpdateOne" Visible="false" /> <asp:Button ID="BtnCancel" runat="server" Text="Cancel" CommandName="CancelOne" Visible="false" /> <asp:Button ID="btnEdit" runat="server" Text="Edit" CommandName="EditOne" /> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> Student ID<asp:TextBox ID="tid" runat="server" Visible="false"></asp:TextBox> </HeaderTemplate> <ItemTemplate> <asp:Label ID="stuid" runat="server" Text=' <%#Eval("sid")%>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> Student Name<asp:TextBox ID="tn" runat="server" Visible="false"></asp:TextBox> </HeaderTemplate> <ItemTemplate> <asp:TextBox ID="txtname" runat="server" Text=' <%#Eval("sname")%>' Visible="false"></asp:TextBox> <asp:Label ID="stuname" runat="server" Text=' <%#Eval("sname")%>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> Marks<asp:TextBox ID="tm" runat="server" Visible="false"></asp:TextBox> </HeaderTemplate> <ItemTemplate> <asp:TextBox ID="txtmrks" runat="server" Text=' <%#Eval("smarks")%>' Visible="false"></asp:TextBox> <asp:Label ID="stumarks" runat="server" Text=' <%#Eval("smarks")%>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Order"> <ItemTemplate> <asp:ImageButton ID="imbup" runat="server" ImageUrl="~/Images/a-icon-alt-arrow-up.png" CommandName="moveup" /> <asp:ImageButton ID="imbdown" runat="server" ImageUrl="~/Images/a-icon-alt-arrow-down.png" CommandName="movedown" /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </td> </tr> </table> </td> </tr> </table> <asp:Label ID="lblmsg" runat="server" Text="Label" Visible="false" ForeColor="Green" Font-Bold="true"></asp:Label> </div> </form> </body> </html>
using System; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; using System.Data.SqlClient; public partial class _Default : System.Web.UI.Page { SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["studentmarks"].ToString()); DataSet ds = new DataSet(); protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) bind(); lblmsg.Visible = false; btnIns.Visible = false; btnvalidate.Visible = false; btnCancelInsert.Visible = false; displayGridNormally(); } protected void bind() { con.Open(); SqlDataAdapter da = new SqlDataAdapter("select * from studentmarks order by recordorder", con); da.Fill(ds); grdOrdering.DataSource = ds; grdOrdering.DataBind(); con.Close(); } protected int getRowsCount() { con.Open(); SqlDataAdapter da = new SqlDataAdapter("select * from studentmarks order by recordorder", con); da.Fill(ds); con.Close(); return ds.Tables[0].Rows.Count; } protected void displayGridNormally() { for (int i = 0; i < grdOrdering.Rows.Count; i++) { TextBox tname = (TextBox)grdOrdering.Rows[i].FindControl("txtname"); TextBox tmarks = (TextBox)grdOrdering.Rows[i].FindControl("txtmrks"); tname.Visible = false; tmarks.Visible = false; Label lblname = (Label)grdOrdering.Rows[i].FindControl("stuname"); Label lblmarks = (Label)grdOrdering.Rows[i].FindControl("stumarks"); lblname.Visible = true; lblmarks.Visible = true ; Button btnupdate = (Button)grdOrdering.Rows[i].Cells[0].FindControl("btnUpdate"); btnupdate.Visible = false; Button btnedit = (Button)grdOrdering.Rows[i].Cells[0].FindControl("btnEdit"); btnedit.Visible =true; Button btncancel = (Button)grdOrdering.Rows[i].Cells[0].FindControl("BtnCancel"); btncancel.Visible = false; Button btndelete = (Button)grdOrdering.Rows[i].Cells[0].FindControl("BtnDel"); btndelete.Visible = true; } } protected void grdOrdering_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { Button btndel = (Button)e.Row.FindControl("BtnDel"); //Use the button id of your button if (btndel != null) { btndel.CommandArgument = e.Row.RowIndex.ToString(); } Button btnupdate = (Button)e.Row.FindControl("btnUpdate"); if (btnupdate != null) { btnupdate.CommandArgument = e.Row.RowIndex.ToString(); } Button btnedit = (Button)e.Row.FindControl("btnEdit"); if (btnedit != null) { btnedit.CommandArgument = e.Row.RowIndex.ToString(); } Button btncancel = (Button)e.Row.FindControl("BtnCancel"); if (btncancel != null) { btncancel.CommandArgument = e.Row.RowIndex.ToString(); } ImageButton imbup = (ImageButton)e.Row.FindControl("imbup"); if (imbup != null) { imbup.CommandArgument = e.Row.RowIndex.ToString(); if (Convert.ToInt32(e.Row.RowIndex.ToString()) == 0) imbup.Visible = false; } ImageButton imbdown = (ImageButton)e.Row.FindControl("imbdown"); if (imbdown != null) { imbdown.CommandArgument = e.Row.RowIndex.ToString(); if (Convert.ToInt32(e.Row.RowIndex.ToString()) == (ds.Tables[0].Rows.Count - 1)) imbdown.Visible = false; } } } protected void grdOrdering_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName.ToString() == "DeleteOne") { int rowIndex = int.Parse(e.CommandArgument.ToString()); DataKey dk = grdOrdering.DataKeys[rowIndex]; int sid = int.Parse(dk.Values["sid"].ToString()); con.Open(); SqlCommand cmd = new SqlCommand("delete from studentmarks where sid='" + sid + "'", con); cmd.ExecuteNonQuery(); con.Close(); lblmsg.Visible = true; lblmsg.Text = "Deleted Successfully"; bind(); } else if (e.CommandName.ToString() == "moveup") { int rowIndex = int.Parse(e.CommandArgument.ToString()); DataKey dk1 = grdOrdering.DataKeys[rowIndex]; int sid1 = int.Parse(dk1.Values["sid"].ToString()); DataKey dk2 = grdOrdering.DataKeys[rowIndex - 1]; int sid2 = int.Parse(dk2.Values["sid"].ToString()); con.Open(); SqlCommand cmd = new SqlCommand("update studentmarks set recordorder="+(rowIndex - 1)+" where sid="+sid1, con); cmd.ExecuteNonQuery(); cmd = new SqlCommand("update studentmarks set recordorder="+rowIndex+" where sid="+sid2, con); cmd.ExecuteNonQuery(); con.Close(); bind(); } else if (e.CommandName.ToString() == "movedown") { int rowIndex = int.Parse(e.CommandArgument.ToString()); DataKey dk1 = grdOrdering.DataKeys[rowIndex]; int sid1 = int.Parse(dk1.Values["sid"].ToString()); DataKey dk2 = grdOrdering.DataKeys[rowIndex+1]; int sid2 = int.Parse(dk2.Values["sid"].ToString()); con.Open(); SqlCommand cmd = new SqlCommand("update studentmarks set recordorder=" + (rowIndex + 1) + " where sid=" + sid1, con); cmd.ExecuteNonQuery(); cmd = new SqlCommand("update studentmarks set recordorder=" + rowIndex + " where sid=" + sid2, con); cmd.ExecuteNonQuery(); con.Close(); bind(); } else if (e.CommandName.ToString() == "UpdateOne") { int rowIndex = int.Parse(e.CommandArgument.ToString()); DataKey dk = grdOrdering.DataKeys[rowIndex]; int sid = int.Parse(dk.Values["sid"].ToString()); TextBox tname = (TextBox)grdOrdering.Rows[rowIndex].FindControl("txtname"); TextBox tmarks = (TextBox)grdOrdering.Rows[rowIndex].FindControl("txtmrks"); con.Open(); SqlCommand cmd = new SqlCommand("update studentmarks set sname='" + tname.Text + "',smarks='" + tmarks.Text + "' where sid=" + sid, con); cmd.ExecuteNonQuery(); con.Close(); grdOrdering.EditIndex = -1; lblmsg.Visible = true; lblmsg.Text = "updated Successfully"; bind(); } else if (e.CommandName.ToString() == "EditOne") { int rowIndex = int.Parse(e.CommandArgument.ToString()); TextBox tname = (TextBox)grdOrdering.Rows[rowIndex].FindControl("txtname"); TextBox tmarks = (TextBox)grdOrdering.Rows[rowIndex].FindControl("txtmrks"); tname.Visible = true; tmarks.Visible = true; Label lblname = (Label)grdOrdering.Rows[rowIndex].FindControl("stuname"); Label lblmarks = (Label)grdOrdering.Rows[rowIndex].FindControl("stumarks"); lblname.Visible = false; lblmarks.Visible = false; tname.Text = lblname.Text; tmarks.Text = lblmarks.Text; Button btnupdate = (Button)grdOrdering.Rows[rowIndex].Cells[0].FindControl("btnUpdate"); btnupdate.Visible = true; Button btnedit = (Button)grdOrdering.Rows[rowIndex].Cells[0].FindControl("btnEdit"); btnedit.Visible = false; Button btncancel = (Button)grdOrdering.Rows[rowIndex].Cells[0].FindControl("BtnCancel"); btncancel.Visible = true; Button btndelete = (Button)grdOrdering.Rows[rowIndex].Cells[0].FindControl("BtnDel"); btndelete.Visible = false; } else if (e.CommandName.ToString() == "CancelOne") { grdOrdering.EditIndex = -1; } } protected void btnIns_Click(object sender, EventArgs e) { btnIns.Visible = true; TextBox sid = grdOrdering.HeaderRow.FindControl("tid") as TextBox; TextBox sname = grdOrdering.HeaderRow.FindControl("tn") as TextBox; TextBox smarks = grdOrdering.HeaderRow.FindControl("tm") as TextBox; btnvalidate.Attributes.Add("OnClick", "return emptytxtboxvalidation('" + Convert.ToString(sid.ClientID) + "','" + Convert.ToString(sname.ClientID) + "','" + Convert.ToString(smarks.ClientID) + "');"); if (sid.Text != "" && sname.Text != "" && smarks.Text != "") { btnvalidate.Visible = false; int rowcount = getRowsCount(); con.Open(); string str1 = "insert into studentmarks values (' " + sid.Text + " ' , ' " + sname.Text + " ', ' " + smarks.Text + " ','" + (rowcount - 1) + "')"; SqlCommand cmd = new SqlCommand(str1, con); cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); con.Close(); lnkAddNewRow.Visible = true; lblmsg.Visible = true; lblmsg.Text = "Data Inserted Successfully"; bind(); btnIns.Visible = false; } else { btnvalidate.Visible = true; btnvalidate.Focus(); } } protected void lnkAddNewRow_Click(object sender, EventArgs e) { TextBox t1 = grdOrdering.HeaderRow.FindControl("tid") as TextBox; TextBox t2 = grdOrdering.HeaderRow.FindControl("tn") as TextBox; TextBox t3 = grdOrdering.HeaderRow.FindControl("tm") as TextBox; t1.Visible = true; t2.Visible = true; t3.Visible = true; btnCancelInsert.Visible = true; lnkAddNewRow.Visible = false; btnIns.Visible = true; } protected void btnCancelInsert_Click(object sender, EventArgs e) { lnkAddNewRow.Visible = true; btnIns.Visible = false; btnvalidate.Visible = false; btnCancelInsert.Visible = false; TextBox t1 = grdOrdering.HeaderRow.FindControl("tid") as TextBox; TextBox t2 = grdOrdering.HeaderRow.FindControl("tn") as TextBox; TextBox t3 = grdOrdering.HeaderRow.FindControl("tm") as TextBox; t1.Visible = false; t2.Visible = false; t3.Visible = false; } }
No comments:
Post a Comment