XML

// C#中DataGrid加载XML数据--添加数据 来源于:http://www.jdwzw.cn
protected System.Web.UI.WebControls.DataGrid dgAddInfo;
  public string xmlFileName = "Zph.xml";
  private void Page_Load(object sender, System.EventArgs e)
  {
   //   DataGridDataBind();
  
   if(!IsPostBack)
   {
    DataLoad("ID") ;
   }
  }

  #region
  private void DataLoad( string SortString )
  {
   //string xmlFileName = @"c:/inetpub/wwwroot/zhaopinhui/Zph.xml " ;
   DataSet ds = new DataSet();
   FileStream FS = new FileStream( Server.MapPath(xmlFileName) ,FileMode.Open);
   ds.ReadXml(FS);
   if(ds.Tables.Count == 0)
   {
    ds.Tables.Add ( MakeZphTable() );
   }
   Trace.Warn("rowcount1=",Convert.ToString(ds.Tables[0].Rows.Count));

   DataView dv =new DataView(ds.Tables[0]);
   if(SortString.Length>0)
   {
    dv.Sort = SortString;
   }
   this.dgAddInfo.DataSource = dv;
   this.dgAddInfo.DataBind();
   FS.Close();
  }
  #endregion

 

#region  创建招聘会的表
  private DataTable MakeZphTable()
  {
   DataTable theTable = new DataTable("Zph");

   DataColumn theColumn1 = new DataColumn();
   theColumn1.DataType = System.Type.GetType("System.Int32");
   theColumn1.ColumnName = "ID";
   theTable.Columns.Add(theColumn1);

   DataColumn theColumn2 = new DataColumn();
   theColumn2.DataType = System.Type.GetType("System.Int32");
   theColumn2.ColumnName = "ZphID" ;
   theTable.Columns.Add(theColumn2);

   DataColumn theColumn3 = new DataColumn();
   theColumn3.DataType = System.Type.GetType("System.String");
   theColumn3.ColumnName = "Title";
   theTable.Columns.Add(theColumn3);

   DataColumn theColumn4 = new DataColumn();
   theColumn4.DataType = System.Type.GetType("System.String");
   theColumn4.ColumnName = "Content";
   theTable.Columns.Add(theColumn4);

   DataColumn theColumn5 = new DataColumn();
   theColumn5.DataType = System.Type.GetType("System.DateTime");
   theColumn5.ColumnName = "Date";
   theTable.Columns.Add(theColumn5);

   DataColumn theColumn6 = new DataColumn();
   theColumn6.DataType = System.Type.GetType("System.String");
   theColumn6.ColumnName = "Time";
   theTable.Columns.Add(theColumn6);

   DataColumn theColumn7 = new DataColumn();
   theColumn7.DataType = System.Type.GetType("System.String");
   theColumn7.ColumnName = "Num";
   theTable.Columns.Add(theColumn7);

   DataColumn theColumn8 = new DataColumn();
   theColumn8.DataType = System.Type.GetType("System.String");
   theColumn8.ColumnName = "Place";
   theTable.Columns.Add(theColumn8);
   return theTable;
  }
//-----------------------------------------------------------------------------------------------------------------------


// C#中DataGrid加载XML数据
 protected System.Web.UI.WebControls.DataGrid dgAddInfo;
  public string xmlFileName = "Zph.xml";
  private void Page_Load(object sender, System.EventArgs e)
  {
   //   DataGridDataBind();
  
   if(!IsPostBack)
   {
    DataLoad("ID") ;
   }
  }

  #region
  private void DataLoad( string SortString )
  {
   //string xmlFileName = @"c:/inetpub/wwwroot/zhaopinhui/Zph.xml " ;
   DataSet ds = new DataSet();
   FileStream FS = new FileStream( Server.MapPath(xmlFileName) ,FileMode.Open);
   ds.ReadXml(FS);
   if(ds.Tables.Count == 0)
   {
    ds.Tables.Add ( MakeZphTable() );
   }
   Trace.Warn("rowcount1=",Convert.ToString(ds.Tables[0].Rows.Count));

   DataView dv =new DataView(ds.Tables[0]);
   if(SortString.Length>0)
   {
    dv.Sort = SortString;
   }
   this.dgAddInfo.DataSource = dv;
   this.dgAddInfo.DataBind();
   FS.Close();
  }
  #endregion

 

#region  创建招聘会的表
  private DataTable MakeZphTable()
  {
   DataTable theTable = new DataTable("Zph");

   DataColumn theColumn1 = new DataColumn();
   theColumn1.DataType = System.Type.GetType("System.Int32");
   theColumn1.ColumnName = "ID";
   theTable.Columns.Add(theColumn1);

   DataColumn theColumn2 = new DataColumn();
   theColumn2.DataType = System.Type.GetType("System.Int32");
   theColumn2.ColumnName = "ZphID" ;
   theTable.Columns.Add(theColumn2);

   DataColumn theColumn3 = new DataColumn();
   theColumn3.DataType = System.Type.GetType("System.String");
   theColumn3.ColumnName = "Title";
   theTable.Columns.Add(theColumn3);

   DataColumn theColumn4 = new DataColumn();
   theColumn4.DataType = System.Type.GetType("System.String");
   theColumn4.ColumnName = "Content";
   theTable.Columns.Add(theColumn4);

   DataColumn theColumn5 = new DataColumn();
   theColumn5.DataType = System.Type.GetType("System.DateTime");
   theColumn5.ColumnName = "Date";
   theTable.Columns.Add(theColumn5);

   DataColumn theColumn6 = new DataColumn();
   theColumn6.DataType = System.Type.GetType("System.String");
   theColumn6.ColumnName = "Time";
   theTable.Columns.Add(theColumn6);

   DataColumn theColumn7 = new DataColumn();
   theColumn7.DataType = System.Type.GetType("System.String");
   theColumn7.ColumnName = "Num";
   theTable.Columns.Add(theColumn7);

   DataColumn theColumn8 = new DataColumn();
   theColumn8.DataType = System.Type.GetType("System.String");
   theColumn8.ColumnName = "Place";
   theTable.Columns.Add(theColumn8);
   return theTable;
  }
//------------------------------------------------------------------------------------------------------------------------

// C#中DataGrid加载XML数据--删除数据
private void dgAddInfo_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
  {
   string deleteKey = string.Empty ;
   if(this.dgAddInfo.EditItemIndex == -1)
   {
    deleteKey = Convert.ToString(this.dgAddInfo.DataKeys[e.Item.ItemIndex]);
    Response.Write("Delete completed for key = " + deleteKey);
   }
   else
   {
    Response.Write("Can't sort until editing is done!");
   }
   int CurrentRow = e.Item.ItemIndex ;
   string currentRow = Convert.ToString(CurrentRow);
   DataSet ds = new DataSet();
   ds.ReadXml(Server.MapPath(xmlFileName));
   DataRow row = ds.Tables[0].Rows[CurrentRow];
   row.Delete();
   ds.WriteXml(Server.MapPath(xmlFileName));
   this.dgAddInfo.EditItemIndex = -1 ;
   DataLoad("");
  }
//-----------------------------------------------------------------------------------------------------------------------
// C#中DataGrid加载XML数据---上移和下移
#region 实现 上移 和 下移 以及序号随机跟捉变的功能
  private void dgManageInfo_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
  {
   if(e.CommandName == "UP" || e.CommandName=="DOWN")
   {
    int index = e.Item.ItemIndex;
//    if(e.CommandName == "UP")
//    {
//     index-=1;
//    }
//    else
//    {
//     index+=1;
//    }

    //if(index<0 || index==dgManageInfo.Items.Count) return;
   
    if( (e.CommandName == "UP" && index == 0) || ( e.CommandName == "DOWN" && index == dgManageInfo.Items.Count - 1 ) )
    {
     return;
    }

    if(e.CommandName == "UP")
    {
     string path = Server.MapPath("ZphDetail.xml");
     XmlDocument xdoc = new XmlDataDocument();
     xdoc.Load(path);
     //int rank = Convert.ToInt32(xdoc.DocumentElement.ChildNodes[e.Item.ItemIndex].ChildNodes[4].InnerText);
     //xdoc.DocumentElement.ChildNodes[e.Item.ItemIndex].ChildNodes[4].InnerText = (rank-1).ToString();
     //xdoc.DocumentElement.ChildNodes[e.Item.ItemIndex-1].ChildNodes[4].InnerText = rank.ToString();
     string curDetailID = dgManageInfo.DataKeys[e.Item.ItemIndex].ToString();
     string upDetailID = dgManageInfo.DataKeys[e.Item.ItemIndex-1].ToString();
     int rank = Convert.ToInt32(dgManageInfo.Items[ e.Item.ItemIndex ].Cells[4].Text);

     for(int i= 0 ; i<xdoc.DocumentElement.ChildNodes.Count;i++)
     {
      if(curDetailID== xdoc.DocumentElement.ChildNodes[i].ChildNodes[0].InnerText)
      {
       xdoc.DocumentElement.ChildNodes[i].ChildNodes[4].InnerText = Convert.ToString(rank-1);
      }
      else if ( upDetailID == xdoc.DocumentElement.ChildNodes[i].ChildNodes[0].InnerText )
      {
       xdoc.DocumentElement.ChildNodes[i].ChildNodes[4].InnerText = rank.ToString();
      }
     }
  
     xdoc.Save(path);
    }
    else
    {
     string path = Server.MapPath("ZphDetail.xml");
     XmlDocument xdoc = new XmlDataDocument();
     xdoc.Load(path);
     //int rank1 = Convert.ToInt32(xdoc.DocumentElement.ChildNodes[e.Item.ItemIndex].ChildNodes[4].InnerText);
     //xdoc.DocumentElement.ChildNodes[e.Item.ItemIndex].ChildNodes[4].InnerText = (rank1+1).ToString();
     //xdoc.DocumentElement.ChildNodes[e.Item.ItemIndex+1].ChildNodes[4].InnerText = rank1.ToString();
     string curDetailID = dgManageInfo.DataKeys[e.Item.ItemIndex].ToString();
     string downDetailID = dgManageInfo.DataKeys[e.Item.ItemIndex+1].ToString();
     int rank = Convert.ToInt32(dgManageInfo.Items[ e.Item.ItemIndex ].Cells[4].Text);

     for(int i= 0 ; i<xdoc.DocumentElement.ChildNodes.Count;i++)
     {
      if(curDetailID== xdoc.DocumentElement.ChildNodes[i].ChildNodes[0].InnerText)
      {
       xdoc.DocumentElement.ChildNodes[i].ChildNodes[4].InnerText = Convert.ToString(rank+1);
      }
      else if ( downDetailID == xdoc.DocumentElement.ChildNodes[i].ChildNodes[0].InnerText )
      {
       xdoc.DocumentElement.ChildNodes[i].ChildNodes[4].InnerText = rank.ToString();
      }
     }
     xdoc.Save(path);
    }


//    DataTable dt = MakeZphTable();

//    for(int i=0;i<this.dgManageInfo.Items.Count;i++)
//    {
//     if(i!=e.Item.ItemIndex)
//     {
//      DataGridItem row = dgManageInfo.Items[i];
//      dt.Rows.Add(new object[]{row.Cells[0].Text,row.Cells[1].Text,row.Cells[2].Text,row.Cells[3].Text,row.Cells[4].Text,row.Cells[5].Text,i+1});
//     }
//    }

//    DataRow moveRow = dt.NewRow();
//    moveRow[0] = e.Item.Cells[0].Text;
//    moveRow[1] = e.Item.Cells[1].Text;
//    moveRow[2] = e.Item.Cells[2].Text;
//    moveRow[3] = e.Item.Cells[3].Text;
//    moveRow[4] = e.Item.Cells[4].Text;
//    moveRow[5] = e.Item.Cells[5].Text;
//    moveRow[6] = index+1;
//
//    dt.Rows.InsertAt(moveRow,index);
//    dt.AcceptChanges();
//
//    this.dgManageInfo.SelectedIndex = index;
//    this.dgManageInfo.DataSource = dt;
//    this.dgManageInfo.DataBind();
    DataLoad("Rank  asc") ;
   }
  }
  #endregion 

//------------------------------------------------------------------------------------------------------------------------

// C#中DataGrid加载XML数据--在另外一页面修改数据
private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   if(!IsPostBack)
   {
    lblID.Text = Request.QueryString["ID"].ToString();
    InitData();//根据传过来的ID来得到相应的值
   }
  }

 

#region 根据传过来的ID来得到相应的值
  private void InitData()
  {
   string path = Server.MapPath("Zph.xml");
   XmlDocument xdoc = new XmlDocument();
   xdoc.Load(path);
   for(int i=0; i<xdoc.DocumentElement.ChildNodes.Count; i++)
   {
    if(lblID.Text == xdoc.DocumentElement.ChildNodes[i].ChildNodes[0].InnerText)
    {
     this.txtZphID.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[1].InnerText;
     this.txtTitle.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[2].InnerText;
     this.txtContent.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[3].InnerText;
     this.txtDate.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[4].InnerText;
     this.txtTime.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[5].InnerText;
     this.txtNum.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[6].InnerText ;
     this.txtPlace.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[7].InnerText;
    }
   }
  }
  #endregion 

 

private void btnEdit_Click(object sender, System.EventArgs e)
  {
   string path = Server.MapPath("Zph.xml");
   XmlDocument xdoc = new XmlDataDocument();
   xdoc.Load(path);
   for(int i= 0 ; i<xdoc.DocumentElement.ChildNodes.Count;i++)
   {
    if(lblID.Text == xdoc.DocumentElement.ChildNodes[i].ChildNodes[0].InnerText)
    {
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[1].InnerText = this.txtZphID.Text ;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[2].InnerText = this.txtTitle.Text;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[3].InnerText = this.txtContent.Text;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[4].InnerText = this.txtDate.Text;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[5].InnerText = this.txtTime.Text;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[6].InnerText = this.txtNum.Text;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[7].InnerText = this.txtPlace.Text;
    }
   }
   xdoc.Save(path);
//   Response.Redirect("Index.aspx");
   Response.Write("<script>alert('修改成功!');window.location.href='Index.aspx'</script>");
  }

  private void btnCancel_Click(object sender, System.EventArgs e)
  {
   InitData();
  }

//--------------------------------------------------------------------------------------------------------------------------
// C#中DataGrid加载XML数据--管理 传值到例外个页面 再传值
前台:ZphManage.aspx

 

< a href='ZphDetailEdit.aspx?ZphDetailID= DataBinder.Eval(Container.DataItem , "ZphDetailID") + "&ZphID=" +DataBinder.Eval(Container.DataItem , "ZphID")%>'>编辑</a>

 

#region 初始化
  private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   if(!IsPostBack)
   {
    //将ID值赋给lblID
    lblZphID.Text = Request.QueryString["ZphID"].ToString();
    InitData();//根据传过来的ID来得到相应的值
   }
  }
  #endregion

 

#region 根据传过来的ID来得到相应的值
  private void InitData()
  {
   string path = Server.MapPath("Zph.xml");
   XmlDocument xdoc = new XmlDocument();
   xdoc.Load(path);
   for(int i=0; i<xdoc.DocumentElement.ChildNodes.Count; i++)
   {
    if(lblZphID.Text == xdoc.DocumentElement.ChildNodes[i].ChildNodes[0].InnerText)
    {
     this.txtTitle.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[1].InnerText;
     this.txtContent.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[2].InnerText;
     this.txtDate.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[3].InnerText;
     this.txtTime.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[4].InnerText;
     this.txtNum.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[5].InnerText ;
     this.txtPlace.Text = xdoc.DocumentElement.ChildNodes[i].ChildNodes[6].InnerText;
    }
   }
  }
  #endregion

 

 #region 编辑事件
  private void btnEdit_Click(object sender, System.EventArgs e)
  {
   string path = Server.MapPath("ZphDetail.xml");
   XmlDocument xdoc = new XmlDataDocument();
   xdoc.Load(path);
   for(int i= 0 ; i<xdoc.DocumentElement.ChildNodes.Count;i++)
   {
    if(lblZphCompanyID.Text == xdoc.DocumentElement.ChildNodes[i].ChildNodes[0].InnerText)
    {
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[1].InnerText = this.txtName.Text;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[2].InnerText = this.txtJob.Text;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[3].InnerText = this.txtPlaceCode.Text;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[4].InnerText = this.txtSortCode.Text;
     xdoc.DocumentElement.ChildNodes[i].ChildNodes[5].InnerText = this.txtColor.Text;
    }
   }
   xdoc.Save(path);
   Response.Write("<script>alert('修改成功!');window.location.href='ZphManage.aspx?ZphID='+ " + Request.QueryString["ZphID"] + "</script>");
  }
  #endregion

 

#region  取消事件
  private void btnCancel_Click(object sender, System.EventArgs e)
  {
   InitData();
  }
  #endregion 

//------------------------------------------------------------------------------------------------------------------------


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值