TextBox内容输出到XML中

using  System;
using  System.Drawing;
using  System.Collections;
using  System.ComponentModel;
using  System.Windows.Forms;
using  System.Data;
using  System.IO;
using  System.Text;
using  System.Xml;
using  System.Xml.Serialization;

namespace  EmployeeData
{
    
/// <summary>
    
/// Summary description for DataForm.
    
/// </summary>

    public class DataForm : System.Windows.Forms.Form
    
{
        
private System.Windows.Forms.GroupBox groupBox1;
        
private System.Windows.Forms.GroupBox groupBox2;
        
private System.Windows.Forms.Label label1;
        
private System.Windows.Forms.Label label2;
        
private System.Windows.Forms.Label label3;
        
private System.Windows.Forms.Label label4;
        
private System.Windows.Forms.Label label5;
        
private System.Windows.Forms.Label label6;
        
private System.Windows.Forms.Label label7;
        
private System.Windows.Forms.TextBox txtName;
        
private System.Windows.Forms.TextBox txtDepartment;
        
private System.Windows.Forms.TextBox txtEmail;
        
private System.Windows.Forms.TextBox txtAge;
        
private System.Windows.Forms.TextBox txtStartDate;
        
private System.Windows.Forms.TextBox txtCurrency;
        
private System.Windows.Forms.TextBox txtAmount;
        
private System.Windows.Forms.Button btnSave;
        
private System.Windows.Forms.Button btnCancel;
        
/// <summary>
        
/// Required designer variable.
        
/// </summary>

        private System.ComponentModel.Container components = null;

        
public DataForm()
        
{
            
//
            
// Required for Windows Form Designer support
            
//
            InitializeComponent();

            
//
            
// TODO: Add any constructor code after InitializeComponent call
            
//
        }


        
/// <summary>
        
/// Clean up any resources being used.
        
/// </summary>

        protected override void Dispose( bool disposing )
        
{
            
if( disposing )
            
{
                
if (components != null
                
{
                    components.Dispose();
                }

            }

            
base.Dispose( disposing );
        }


        
Windows Form Designer generated code

        
/// <summary>
        
/// The main entry point for the application.
        
/// </summary>

        [STAThread]
        
static void Main() 
        
{
            Application.Run(
new DataForm());
        }


        
private void btnSave_Click(object sender, System.EventArgs e) {
            
// Create new Employee object
            Employee NewEmployee = new Employee();

            
// Save personal info to Employee object
            NewEmployee.Name = txtName.Text;
            NewEmployee.Department 
= txtDepartment.Text;
            NewEmployee.Email 
= txtEmail.Text;
            NewEmployee.Age 
= Convert.ToInt32(txtAge.Text);
            NewEmployee.StartDate 
= Convert.ToDateTime(txtStartDate.Text);

            
// Save salary info to new Money object under Employee object
            NewEmployee.Salary = new Money();
            NewEmployee.Salary.Currency 
= txtCurrency.Text;
            NewEmployee.Salary.Amount 
= Convert.ToDecimal(txtAmount.Text);
            
            
// Serialize object and display XML
            string strEmployeeData = SerializeObject(NewEmployee);
            MessageBox.Show(strEmployeeData);
            
             
//Deserialize XML
            DeserializeXml(strEmployeeData);
            
        }


        
private string SerializeObject(Employee EmpObject) {
            
// Create new XmlSerializer object
            XmlSerializer MySerializer = new XmlSerializer(typeof(Employee));

            
// Create new StringWriter to hold serialized XML
            TextWriter TW = new StringWriter();

            
// Serialize Employee object
            MySerializer.Serialize(TW, EmpObject);

            
// Return XML content of StringWriter
            return TW.ToString();
        }


        
private void DeserializeXml(string XmlData) {
            
// Create new Employee object
            Employee ReturnedEmployee;

            
// Create new XmlSerializer
            XmlSerializer MyDeserializer = new XmlSerializer(typeof(Employee));

            
// Create StringReader to pass XML data
            TextReader TR = new StringReader(XmlData);
            XmlReader XR 
= new XmlTextReader(TR);
            
            
// Check if object can be deserialized
            if (MyDeserializer.CanDeserialize(XR)) {
                
                
// Deserialize XML
                ReturnedEmployee = (Employee)MyDeserializer.Deserialize(XR);
                
//ShowEmployeeData(ReturnedEmployee);
            }

        }


        
private void ShowEmployeeData(Employee EmpObject) {
            
// Create new form to show deserialized data
            ReturnedData ReturnForm = new ReturnedData();

            
// Construct output string from deserialized data
            StringBuilder OutputString = new StringBuilder("Employee Information: ");
            OutputString.Append(
"Name: " + EmpObject.Name + " ");
            OutputString.Append(
"Department: " + EmpObject.Department + " ");
            OutputString.Append(
"Email: " + EmpObject.Email + " ");
            OutputString.Append(
"Age: " + EmpObject.Age.ToString() + " ");
            OutputString.Append(
"Start Date: " + EmpObject.StartDate.ToString() + " ");
            OutputString.Append(
"Salary: " + EmpObject.Salary.Currency + EmpObject.Salary.Amount + " ");
            ReturnForm.txtEmployeeData.Text 
= OutputString.ToString();
            ReturnForm.ShowDialog();
        }


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

    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值