XML kodları,
<?xml version="1.0" standalone="yes"?><comments><comment><author>1Ahmet</author><email>ahmet@gmail.com</email><text>sdsdsd</text><date>08.02.2010</date><path>07.jpg</path><approve>true</approve></comment>HTML kodları
<asp:GridView ID="gvitems" runat="server" OnRowEditing="Editdata" OnPageIndexChanging="pageddata" OnRowDeleting="Deletedata" OnRowUpdating="Updatedata" OnRowCancelingEdit="Canceldata" PageSize="10" AllowPaging="True" CellPadding="4" ForeColor="#333333" AutoGenerateColumns="False" Width="100%" GridLines="None" OnRowDataBound="gvitems_RowDataBound"> <RowStyle BackColor="#F7F6F3" ForeColor="#333333" /> <PagerSettings Position="Bottom" /> <FooterStyle BackColor="#5D7B9D" ForeColor="White" Font-Bold="True" /> <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" /> <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" /> <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" HorizontalAlign="Left" /> <EditRowStyle BackColor="#999999" /> <AlternatingRowStyle BackColor="White" ForeColor="#284775" /> <Columns> <asp:TemplateField> <HeaderTemplate> Row </HeaderTemplate> <ItemTemplate> <asp:Label ID="lblRowNumber" runat="server" /> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> Author </HeaderTemplate> <ItemTemplate> <%#Eval("author") %> </ItemTemplate> <EditItemTemplate> <asp:TextBox class="textbox" ID="txtauthor" runat="server" Text='<%#Eval("author") %>' /> <asp:RequiredFieldValidator ID="rfvAuthor" runat="server" ControlToValidate="txtauthor" ValidationGroup="comments" ErrorMessage="Author empty.">*</asp:RequiredFieldValidator> </EditItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> Email </HeaderTemplate> <ItemTemplate> <%#Eval("email") %> </ItemTemplate> <EditItemTemplate> <asp:TextBox class="textbox" ID="txtemail" runat="server" Text='<%#Eval("email") %>' /> <asp:RequiredFieldValidator ID="rfvEmail" runat="server" ControlToValidate="txtemail" ValidationGroup="comments" ErrorMessage="Email empty.">*</asp:RequiredFieldValidator> <asp:RegularExpressionValidator ID="revEmail" runat="server" ErrorMessage="Email format." ControlToValidate="txtemail" ValidationGroup="comments" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator> </EditItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> Text </HeaderTemplate> <ItemTemplate> <%#Eval("text") %> </ItemTemplate> <EditItemTemplate> <asp:TextBox class="textbox" Rows="15" Columns="50" ID="txttext" runat="server" TextMode="MultiLine" Text='<%#Eval("text") %>' /> <asp:RequiredFieldValidator ID="rfvText" runat="server" ControlToValidate="txttext" ValidationGroup="comments" ErrorMessage="Text empty.">*</asp:RequiredFieldValidator> </EditItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> Date </HeaderTemplate> <ItemTemplate> <%#Eval("date") %> </ItemTemplate> <EditItemTemplate> Time: <asp:TextBox class="textbox" ID="txtTime" runat="server" Text='<%# Convert.ToDateTime(Eval("date").ToString()).ToShortTimeString() %>' /><br /> Date: <asp:TextBox class="textbox" ID="txtDate" runat="server" Text='<%# Convert.ToDateTime(Eval("date").ToString()).ToShortDateString() %>' /> </EditItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> Path </HeaderTemplate> <ItemTemplate> <%#Eval("path") %> </ItemTemplate> <EditItemTemplate> <asp:TextBox class="textbox" ID="txtpath" runat="server" Text='<%#Eval("path") %>' /> </EditItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> Approve </HeaderTemplate> <ItemTemplate> <%#Eval("approve") %> </ItemTemplate> <EditItemTemplate> <asp:DropDownList ID="drpApprove" runat="server"> <asp:ListItem Value="true">True</asp:ListItem> <asp:ListItem Value="false">False</asp:ListItem> </asp:DropDownList> </EditItemTemplate> </asp:TemplateField> <asp:TemplateField> <ItemTemplate> <asp:Button class="button" ID="btnEdit" runat="server" CommandName="Edit" Text="Düzenle" /> <asp:Button class="button" ID="btnDelete" runat="server" CommandName="Delete" Text="Sil" OnClientClick="javascript:return confirm('Silmek istediğinizden eminmisiniz?')" /> </ItemTemplate> <EditItemTemplate> <asp:Button class="button" ValidationGroup="comments" ID="btnUpdate" runat="server" CommandName="Update" Text="Güncelle" /> <asp:Button class="button" ID="btnCancel" runat="server" CommandName="Cancel" Text="İptal" /> </EditItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> <hr style="height: 15; text-align: left; color: #FF0000; width: 100%" /> <div> <table> <tr> <td colspan="2" align="center"> <strong>NEW</strong> </td> </tr> <tr> <td> <strong>Author :</strong> </td> <td> <asp:TextBox class="textbox" ID="txtNewAuthor" runat="server" /> <asp:RequiredFieldValidator ID="rfvNewAuthor" runat="server" ControlToValidate="txtNewAuthor" ValidationGroup="new" ErrorMessage="Author empty.">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td> <strong>Email :</strong> </td> <td> <asp:TextBox class="textbox" ID="txtNewEmail" runat="server" /> <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txtNewEmail" ValidationGroup="new" ErrorMessage="Email empty.">*</asp:RequiredFieldValidator> <asp:RegularExpressionValidator ID="revEmail" runat="server" ErrorMessage="Email format." ControlToValidate="txtNewEmail" ValidationGroup="new" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">*</asp:RegularExpressionValidator> </td> </tr> <tr> <td> <strong>Text :</strong> </td> <td> <asp:TextBox class="textbox" ID="txtNewText" Rows="15" Columns="50" runat="server" TextMode="MultiLine" /> <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="txtNewText" ValidationGroup="new" ErrorMessage="Text empty.">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td> <strong>Date :</strong> </td> <td> <asp:TextBox class="textbox" ID="txtNewDate" runat="server" /> <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ControlToValidate="txtNewDate" ValidationGroup="new" ErrorMessage="Date empty.">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td> <strong>Path :</strong> </td> <td> <asp:TextBox class="textbox" ID="txtNewPath" runat="server" /> <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ControlToValidate="txtNewPath" ValidationGroup="new" ErrorMessage="Path empty.">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td> <strong>Approve :</strong> </td> <td> <asp:DropDownList ID="drpApprove" runat="server"> <asp:ListItem Value="true">True</asp:ListItem> <asp:ListItem Value="false">False</asp:ListItem> </asp:DropDownList> <asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ControlToValidate="txtNewPath" ValidationGroup="new" ErrorMessage="Path empty.">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td colspan="2"> <asp:Button class="button" ValidationGroup="new" ID="btnAddComment" runat="server" Text="Kaydet" OnClick="btnAddComment_Click" /> </td> </tr> </table> </div>
Code Behind kısmı
void Page_Load(object sender, EventArgs e) if (!Page.IsPostBack) {GetData();}} void GetData() {DataSet ds = new DataSet();ds.ReadXml(Server.MapPath("tempcomments.xml"));gvitems.DataSource = ds;gvitems.DataBind();} protected void Editdata(object s, GridViewEditEventArgs e) {gvitems.EditIndex = e.NewEditIndex;GetData();}protected void Deletedata(object s, GridViewDeleteEventArgs e) {GetData();DataSet ds = gvitems.DataSource as DataSet;ds.Tables[0].Rows[gvitems.Rows[e.RowIndex].DataItemIndex].Delete();ds.WriteXml(Server.MapPath("tempcomments.xml"));GetData();} protected void Canceldata(object s, GridViewCancelEditEventArgs e) {gvitems.EditIndex = -1;GetData();}protected void Updatedata(object s, GridViewUpdateEventArgs e) {int i = e.RowIndex;string author = (gvitems.Rows[e.RowIndex].FindControl("txtauthor") as TextBox).Text;string email = (gvitems.Rows[e.RowIndex].FindControl("txtemail") as TextBox).Text;string text = (gvitems.Rows[e.RowIndex].FindControl("txttext") as TextBox).Text;string date = (gvitems.Rows[e.RowIndex].FindControl("txtdate") as TextBox).Text;string path = (gvitems.Rows[e.RowIndex].FindControl("txtpath") as TextBox).Text;string approve = (gvitems.Rows[e.RowIndex].FindControl("drpApprove") as DropDownList).SelectedValue;gvitems.EditIndex = -1;GetData();DataSet ds = (DataSet)gvitems.DataSource;ds.Tables[0].Rows[i]["author"] = author;ds.Tables[0].Rows[i]["email"] = email;ds.Tables[0].Rows[i]["text"] = text;ds.Tables[0].Rows[i]["date"] = date;ds.Tables[0].Rows[i]["path"] = path;ds.Tables[0].Rows[i]["approve"] = approve;ds.WriteXml(Server.MapPath("tempcomments.xml"));GetData();} protected void pageddata(object s, GridViewPageEventArgs e) {gvitems.PageIndex = e.NewPageIndex;GetData();}protected void btnAddComment_Click(object sender, EventArgs e) {GetData();DataSet ds = gvitems.DataSource as DataSet;DataRow dr = ds.Tables[0].NewRow();dr["author"] = txtNewAuthor.Text;dr["email"] = txtNewEmail.Text;dr["text"] = txtNewText.Text;dr["date"] = txtNewDate.Text;dr["path"] = txtNewPath.Text;dr["approve"] = txtNewPath.Text;ds.Tables[0].Rows.Add(dr);ds.AcceptChanges();ds.WriteXml(Server.MapPath("tempcomments.xml"));GetData();txtNewAuthor.Text = string.Empty;txtNewEmail.Text = string.Empty;txtNewText.Text = string.Empty;txtNewDate.Text = string.Empty;txtNewPath.Text = string.Empty;}
void GetData() {DataSet ds = new DataSet();ds.ReadXml(Server.MapPath("tempcomments.xml"));gvitems.DataSource = ds;gvitems.DataBind();} protected void Editdata(object s, GridViewEditEventArgs e) {gvitems.EditIndex = e.NewEditIndex;GetData();}protected void Deletedata(object s, GridViewDeleteEventArgs e) {GetData();DataSet ds = gvitems.DataSource as DataSet;ds.Tables[0].Rows[gvitems.Rows[e.RowIndex].DataItemIndex].Delete();ds.WriteXml(Server.MapPath("tempcomments.xml"));GetData();}
protected void Canceldata(object s, GridViewCancelEditEventArgs e) {gvitems.EditIndex = -1;GetData();}protected void Updatedata(object s, GridViewUpdateEventArgs e) {int i = e.RowIndex;string author = (gvitems.Rows[e.RowIndex].FindControl("txtauthor") as TextBox).Text;string email = (gvitems.Rows[e.RowIndex].FindControl("txtemail") as TextBox).Text;string text = (gvitems.Rows[e.RowIndex].FindControl("txttext") as TextBox).Text;string date = (gvitems.Rows[e.RowIndex].FindControl("txtdate") as TextBox).Text;string path = (gvitems.Rows[e.RowIndex].FindControl("txtpath") as TextBox).Text;string approve = (gvitems.Rows[e.RowIndex].FindControl("drpApprove") as DropDownList).SelectedValue;gvitems.EditIndex = -1;GetData();DataSet ds = (DataSet)gvitems.DataSource;ds.Tables[0].Rows[i]["author"] = author;ds.Tables[0].Rows[i]["email"] = email;ds.Tables[0].Rows[i]["text"] = text;ds.Tables[0].Rows[i]["date"] = date;ds.Tables[0].Rows[i]["path"] = path;ds.Tables[0].Rows[i]["approve"] = approve;ds.WriteXml(Server.MapPath("tempcomments.xml"));GetData();}
protected void pageddata(object s, GridViewPageEventArgs e) {gvitems.PageIndex = e.NewPageIndex;GetData();}protected void btnAddComment_Click(object sender, EventArgs e) {GetData();DataSet ds = gvitems.DataSource as DataSet;DataRow dr = ds.Tables[0].NewRow();dr["author"] = txtNewAuthor.Text;dr["email"] = txtNewEmail.Text;dr["text"] = txtNewText.Text;dr["date"] = txtNewDate.Text;dr["path"] = txtNewPath.Text;dr["approve"] = txtNewPath.Text;ds.Tables[0].Rows.Add(dr);ds.AcceptChanges();ds.WriteXml(Server.MapPath("tempcomments.xml"));GetData();txtNewAuthor.Text = string.Empty;txtNewEmail.Text = string.Empty;txtNewText.Text = string.Empty;txtNewDate.Text = string.Empty;txtNewPath.Text = string.Empty;}
protected void gvitems_RowDataBound(object sender, GridViewRowEventArgs e){if (e.Row.RowType == DataControlRowType.DataRow){if (e.Row.RowIndex == gvitems.EditIndex){DataRowView dr;dr = (DataRowView)e.Row.DataItem;DropDownList drpApprove = e.Row.FindControl("drpApprove") as DropDownList;drpApprove.SelectedValue = dr["approve"].ToString();}(e.Row.FindControl("lblRowNumber") as Label).Text = (e.Row.RowIndex + 1 + (gvitems.PageIndex * 10)).ToString();}}
Yazılım | 0 Yorum | 12.02.2010 02:58:02 Etiketler: asp.net XML gridview