Morpheusweb.it - Risorse per webmaster: script, ASP.NET, C#, Visual Basic .Net, tutorial, asp, javascript, css, php, html, java, ADO, VBScript, forms, frames, Active Server Pages, Dynamic HTML, database, gratis per webmaster e webdesigner


Gestire un file XML con un DataGrid


<%@ Page Language="C#" Debug="true" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Data"%>
<html>
<script runat="server">
private DataSet CreateDataSource()
{
  XmlDataDocument mydata = new XmlDataDocument();
  mydata.DataSet.ReadXml(Server.MapPath("magazzino.xml"));
  return mydata.DataSet;
}

public void Page_Load(Object sender, EventArgs e)
{
  if (!IsPostBack)
  {
    mygrid.DataSource = CreateDataSource();
    mygrid.DataBind();
  }
}

public void doCancel(Object sender, DataGridCommandEventArgs e)
{
  mygrid.EditItemIndex = -1;
  mygrid.DataSource = CreateDataSource();
  mygrid.DataBind();
}

public void doEdit (Object sender, DataGridCommandEventArgs e)
{
  mygrid.EditItemIndex = e.Item.ItemIndex;
  mygrid.DataSource = CreateDataSource();
  mygrid.DataBind();
}

public void doUpdate(Object sender, DataGridCommandEventArgs e)
{
  string nome = ((TextBox)e.Item.Cells[0].Controls[1]).Text;
  string quantita = ((TextBox)e.Item.Cells[1].Controls[1]).Text;
  mygrid.EditItemIndex = -1;
  DataSet ds = CreateDataSource();
  DataRow row = ds.Tables[0].Rows[e.Item.ItemIndex];
  row["nome"] = nome;
  row["quantita"] = quantita;
  ds.WriteXml(Server.MapPath("magazzino.xml"));
  mygrid.DataSource = CreateDataSource();
  mygrid.DataBind();
}

public void doDelete(Object sender, DataGridCommandEventArgs e)
{
  mygrid.EditItemIndex = -1;
  DataSet ds = CreateDataSource();
  DataRow row = ds.Tables[0].Rows[e.Item.ItemIndex];
  row.Delete();
  ds.WriteXml(Server.MapPath("magazzino.xml"));
  mygrid.DataSource = CreateDataSource();
  mygrid.DataBind();
}
</script>
<body>
<form id="Form1" runat="server">
<asp:datagrid runat="server" AutoGenerateColumns="false"
width="450" id="mygrid"
OnEditCommand="doEdit"
OnCancelCommand="doCancel"
OnUpdateCommand="doUpdate"
OnDeleteCommand="doDelete">
<Columns>
<asp:TemplateColumn>
<HeaderTemplate>
<b> Nome </b>
</HeaderTemplate>
<ItemTemplate>
<asp:Label
Text='<%# DataBinder.Eval(Container.DataItem, "nome") %>'
runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id="nome"
textMode="MultiLine" Columns="35"
Rows="8" Text='<%# DataBinder.Eval(Container.DataItem, "nome") %>'
runat="server"/>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<HeaderTemplate>
<b> Quantita </b>
</HeaderTemplate>
<ItemTemplate>
<asp:Label
Text='<%# DataBinder.Eval(Container.DataItem, "quantita") %>'
runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id="quantita"
textMode="MultiLine" Columns="35"
Rows="8" Text='<%# DataBinder.Eval(Container.DataItem, "quantita") %>'
runat="server"/>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:EditCommandColumn
ButtonType="LinkButton"
CancelText="Cancel"
EditText="Edit"
UpdateText="Update" />
<asp:ButtonColumn Text= "Delete" CommandName="Delete"></asp:ButtonColumn>
</Columns>
</asp:datagrid>
</form>
</body>
</html>



Scarica il Codice...


Stampa la pagina


 








Inizio pagina

risorse per webmaster