比如说:在TEXTBOX输入学生的姓名,学号,班级点击BUTTON自动生成XML文件并记录数据呢

解决方案 »

  1.   

    你自己设计一个schema,然后用System.Xml里面的类(比如XmlTextWriter);来输出xml文件就好了。
      

  2.   

    学习以下System.Xml及相应的namespace, .net提供了多种处理xml的方法,除ado.net外,可以用DOM模型,也可以用XmlTextWriter/reader
      

  3.   

    string strxml=@"<?xml version='1.0' encoding='utf-8' ?><Bill></Bill>";
    System.Xml.XmlDocument xmldoc=new System.Xml.XmlDocument();
    xmldoc.LoadXml(strxml);
    forSave(this,ref xmldoc);
    string path=System.IO.Path.GetDirectoryName(Application.ExecutablePath)"+this.TbxID.Text+@".xml";
    xmldoc.Save(path);
    ///forSave 函数
    private void forSave(System.Windows.Forms.Control crl,ref System.Xml.XmlDocument xmldoc)
    {

    for(int i=0;i<crl.Controls.Count;i++)
    {
    if(crl.Controls[i].Controls.Count>0)
    {
    forSave(crl.Controls[i],ref xmldoc);
    }
    if(crl.Controls[i].Name.Length<=3)
    {
    continue;
    }
    if(crl.Controls[i].Name.Substring(0,3)=="Tbx")
    {
    XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name);
    try
    {
    newTitle.InnerText=crl.Controls[i].Text;
    }
    catch
    {
    newTitle.InnerText="";
    }
    xmldoc["Bill"].AppendChild(newTitle);
    }
    if(crl.Controls[i].Name.Substring(0,3)=="Cbx")
    {
    XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name);
    try
    {
    newTitle.InnerText=crl.Controls[i].Text;
    }
    catch
    {
    newTitle.InnerText="";
    }
    xmldoc["Bill"].AppendChild(newTitle);
    }
    if(crl.Controls[i].Name.Substring(0,3)=="Lbx")
    {
    ListView lvi=crl.Controls[i] as ListView;
    for(int j=0;j<lvi.Items.Count;j++)
    {
    for(int k=0;k<lvi.Items[j].SubItems.Count;k++)
    {
    XmlElement newTitle=xmldoc.CreateElement(crl.Controls[i].Name+j.ToString()+k.ToString());
    newTitle.InnerText=lvi.Items[j].SubItems[k].Text;
    xmldoc["Bill"].AppendChild(newTitle);
    }
    }
    }
    }
    }
      

  4.   

    xiaomatian(趴趴熊◎%#……※×) 的程序我还看不明白唉!再学学看!~