C# Winform 遍历面板控件,写入XML

3 篇文章 0 订阅
源码是:
void FindCtrlName(Control parent)//遍历面板控件
        {
            foreach (Control ctrl in parent.Controls)
            {
                CtrlToXML(ctrl);
                if (ctrl.Controls.Count > 0)
                {
                    FindCtrlName(ctrl);
                }
            }
        }

        private void CtrlToXML(Control ctrl)//Linq to XML
        {
            XElement xe = XElement.Load(@"setting\test.xml");
            XElement record = new XElement(
                new XElement("controls",
                new XAttribute("type", ctrl.GetType().ToString()),
                new XAttribute("language", "Chinese"),
                new XAttribute("name", ctrl.Name),
                new XElement("title", ctrl.Text),
                new XElement("visible", ctrl.Visible),
                new XElement("enable", ctrl.Enabled),
                new XElement("value", 28.00)));

            xe.Add(record);
            xe.Save(@"setting\test.xml");
//            MessageBox.Show("插入成功!");
        }


我的面板得到的 XML 是:

<?xml version="1.0" encoding="utf-8"?>
<table>
  <controls type="System.Windows.Forms.TabPage" language="Chinese" name="tabPageSys">
    <title>系统参数</title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.TabControl" language="Chinese" name="tabControlFSetting">
    <title></title>
    <visible>true</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.PictureBox" language="Chinese" name="pictureBox1">
    <title></title>
    <visible>true</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.GroupBox" language="Chinese" name="groupBox3">
    <title>子设备</title>
    <visible>true</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.Label" language="Chinese" name="label13">
    <title>设备:</title>
    <visible>true</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.ComboBox" language="Chinese" name="comboBox8">
    <title></title>
    <visible>true</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.NumericUpDown" language="Chinese" name="numericUpDown9">
    <title>255</title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.UpDownBase+UpDownButtons" language="Chinese" name="">
    <title></title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.UpDownBase+UpDownEdit" language="Chinese" name="">
    <title>255</title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.Button" language="Chinese" name="button4">
    <title>GO</title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.CheckBox" language="Chinese" name="checkBox1">
    <title>电机</title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.RadioButton" language="Chinese" name="radioButton2">
    <title>前后(Y)</title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.RadioButton" language="Chinese" name="radioButton1">
    <title>左右(X)</title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.UpDownBase+UpDownEdit" language="Chinese" name="">
    <title>0</title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.TextBox" language="Chinese" name="textBox3">
    <title></title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
  <controls type="System.Windows.Forms.TextBox" language="Chinese" name="textBox1">
    <title>192.168.1.253</title>
    <visible>false</visible>
    <enable>true</enable>
    <value>28</value>
  </controls>
</table>



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值