Edit,Update,delete in gridview using Xml file
<asp:GridView ID=”gv” runat=”server” OnRowEditing=”Editdata”
OnPageIndexChanging=”pageddata” OnRowDeleting=”Deletedata”
OnRowUpdating=”Updatedata” OnRowCancelingEdit=”Canceldata” AllowPaging=”True”
AutoGenerateColumns=False PageSize=”3″ CellPadding=”4″ ForeColor=”#333333″
GridLines=”None”>
<FooterStyle BackColor=”#507CD1″ Font-Bold=”True” ForeColor=”White” />
<RowStyle BackColor=”#EFF3FB” />
<Columns>
<asp:TemplateField HeaderText=”empId” >
<ItemTemplate>
<asp:Label ID=”lblid” runat=server Text=’<%#Eval(”empid”) %>’></asp:Label>
</ItemTemplate>
<EditItemTemplate >
<asp:TextBox ID=”txtid” runat =server Text=’<%#Eval(”empid”) %>’></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText=”empname” >
<ItemTemplate>
<asp:Label ID=”lblname” runat=server Text=’<%#Eval(”empname”) %>’></asp:Label>
</ItemTemplate>
<EditItemTemplate >
<asp:TextBox ID=”txtname” runat =server Text=’<%#Eval(”empname”) %>’></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText=”empcity” >
<ItemTemplate>
<asp:Label ID=”lblcity” runat=server Text=’<%#Eval(”empcity”) %>’></asp:Label>
</ItemTemplate>
<EditItemTemplate >
<asp:TextBox ID=”txtcity” runat =server Text=’<%#Eval(”empcity”) %>’></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText=”empsalary” >
<ItemTemplate>
<asp:Label ID=”lblsalary” runat=server Text=’<%#Eval(”empsalary”) %>’></asp:Label>
</ItemTemplate>
<EditItemTemplate >
<asp:TextBox ID=”txtsalary” runat =server Text=’<%#Eval(”empsalary”) %>’></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:CommandField ShowEditButton=”True” />
<asp:CommandField ShowDeleteButton=”True” />
</Columns>
<PagerStyle BackColor=”#2461BF” ForeColor=”White” HorizontalAlign=”Center” />
<SelectedRowStyle BackColor=”#D1DDF1″ Font-Bold=”True” ForeColor=”#333333″ />
<HeaderStyle BackColor=”#507CD1″ Font-Bold=”True” ForeColor=”White” />
<EditRowStyle BackColor=”#2461BF” />
<AlternatingRowStyle BackColor=”White” />
</asp:GridView>
<br />
<br />
<div class=”border_table_userlogin” >
<asp:TextBox ID=”empId” runat=”server”></asp:TextBox><br />
<asp:TextBox ID=”empName” runat=”server”></asp:TextBox>
<br />
<asp:TextBox ID=”empcity” runat=”server”></asp:TextBox>
<br />
<asp:TextBox ID=”empsalary” runat=”server”></asp:TextBox>
<br />
<asp:Button ID=”btninsert” runat=”server” Text=”Insert”
onclick=”insert” />
</div>
codefile//////////
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
binddata();
}
}
void binddata()
{
DataSet ds = new DataSet();
ds.ReadXml(Server.MapPath(”empdata.xml”));
gv.DataSource = ds;
gv.DataBind();
}
protected void Editdata(object s, GridViewEditEventArgs e)
{
gv.EditIndex = e.NewEditIndex;
binddata();
}
protected void Deletedata(object s, GridViewDeleteEventArgs e)
{
binddata();
DataSet ds= gv.DataSource as DataSet;
ds.Tables[0].Rows[gv.Rows[e.RowIndex].DataItemIndex].Delete();
ds.WriteXml(Server.MapPath(”empdata.xml”));
binddata ();
}
protected void Canceldata(object s, GridViewCancelEditEventArgs e)
{
gv.EditIndex = -1;
binddata();
}
protected void Updatedata(object s, GridViewUpdateEventArgs e)
{
int i = e.RowIndex;
string id=(gv.Rows[e.RowIndex].FindControl(”txtid”) as TextBox).Text;
string name=(gv.Rows[e.RowIndex].FindControl(”txtname”) as TextBox).Text;
string city=(gv.Rows[e.RowIndex].FindControl(”txtcity”) as TextBox).Text;
string salary=(gv.Rows[e.RowIndex].FindControl(”txtsalary”) as TextBox).Text;
gv.EditIndex = -1;
binddata();
DataSet ds =(DataSet) gv.DataSource;
ds.Tables[0].Rows[i]["empid"] = id;
ds.Tables[0].Rows[i]["empname"] = name;
ds.Tables[0].Rows[i]["empcity"] = city;
ds.Tables[0].Rows[i]["empsalary"] = salary;
ds.WriteXml(Server.MapPath(”empdata.xml”));
binddata();
}
protected void pageddata(object s, GridViewPageEventArgs e)
{
gv.PageIndex = e.NewPageIndex;
binddata();
}
protected void insert(object sender, EventArgs e)
{
binddata();
DataSet ds = gv.DataSource as DataSet;
DataRow dr = ds.Tables[0].NewRow();
dr[0] = empId.Text;
dr[1] = empName.Text;
dr[2] = empcity.Text;
dr[3] = empsalary.Text;
ds.Tables[0].Rows.Add(dr);
ds.AcceptChanges();
ds.WriteXml(Server.MapPath(”empdata.xml”));
binddata();
empId.Text = string.Empty;
empcity.Text = string.Empty;
empName.Text = string.Empty;
empsalary.Text = string.Empty;
}



it is very helpful.I am very much thankful to u.
yashwant
August 17, 2008