| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158 | using System;using System.Collections.Generic;using System.ComponentModel;using System.ComponentModel.DataAnnotations;using System.Drawing;using System.Data;using System.Linq;using System.Reflection;using System.Text;using System.Windows.Controls;using System.Windows.Forms;using Aitex.Core.RT.Log;using Aitex.Core.RT.SCCore;using Aitex.Core.RT.Simulator;using CheckBox = System.Windows.Forms.CheckBox;using TextBox = System.Windows.Forms.TextBox;using UserControl = System.Windows.Forms.UserControl;namespace Aitex.Core.Backend{    public partial class SystemConfigView : UserControl    {        //<scname, type>        private Dictionary<string, Type> _scItems = new Dictionary<string, Type>();        public SystemConfigView()        {            InitializeComponent();        }        private void SystemConfigView_Load(object sender, EventArgs e)        {            this.Dock = DockStyle.Fill;            //Dictionary<string, object> items = new Dictionary<string, object>();            //List<string> groups = new List<string>();            //foreach (FieldInfo field in typeof(SCName).GetFields())            //{            //    var group = field.Name.Split('_')[0];            //    var name = field.Name.Split('_')[1];            //    if (!groups.Contains(group))            //    {            //        groups.Add(group);            //        TextBox tb = new TextBox();            //        tb.ReadOnly = true;            //        tb.Enabled = false;            //        tb.Text = group;            //        tb.TextAlign = HorizontalAlignment.Center;            //        tb.BackColor = System.Drawing.SystemColors.MenuHighlight;            //        tb.Location = new System.Drawing.Point(3, 3);            //        tb.Size = new System.Drawing.Size(262, 35);            //        tb.TabIndex = 0;            //        this.flowLayoutPanel1.Controls.Add(tb);            //    }            //    _scItems[name] = typeof(string);            //    TextBox tbName = new TextBox();            //    tbName.Location = new System.Drawing.Point(3, 3);            //    tbName.ReadOnly = true;            //    tbName.Size = new System.Drawing.Size(268, 21);            //    tbName.Text = name;            //    tbName.Tag = field.Name;            //    TextBox tbValue = new TextBox();            //    tbValue.Location = new System.Drawing.Point(3, 3);            //    tbValue.Size = new System.Drawing.Size(168, 21);            //    tbValue.Text = SC.GetItemValue(field.Name).ToString();            //    tbValue.Name = "tb" + field.Name;            //    System.Windows.Forms.Button bt = new System.Windows.Forms.Button();            //    bt.Location = new System.Drawing.Point(710, 3);            //    bt.Size = new System.Drawing.Size(75, 23);            //    bt.Text = "Set";            //    bt.UseVisualStyleBackColor = true;            //    bt.Click += bt_Click;            //    bt.Name = "bt" + field.Name;            //    bt.Tag = field.Name;            //    FlowLayoutPanel fl = new FlowLayoutPanel();            //    fl.Controls.Add(tbName);            //    fl.Controls.Add(tbValue);            //    fl.Controls.Add(bt);            //    fl.Location = new System.Drawing.Point(3, 3);            //    fl.Size = new System.Drawing.Size(853, 33);            //    this.flowLayoutPanel1.Controls.Add(fl);            //}        }        void bt_Click(object sender, EventArgs e)        {            System.Windows.Forms.Button bt = sender as System.Windows.Forms.Button;                        FlowLayoutPanel fl = bt.Parent as FlowLayoutPanel;                            TextBox tbName = new TextBox();                TextBox tbValue = new TextBox();                                 foreach (var v in fl.Controls)                {                    TextBox tb = v as TextBox;                    if (tb == null)                        continue;                    if (tb.ReadOnly)                        tbName = tb;                    else                    {                        tbValue = tb;                    }                }            SC.SetItemValue(bt.Tag.ToString(), tbValue.Text);        }        private void button1_Click(object sender, EventArgs e)        {            //foreach (var panel in flowLayoutPanel1.Controls)            //{            //    if (panel.GetType() != typeof(FlowLayoutPanel))            //        continue;            //    TextBox tbName = new TextBox();            //    TextBox tbValue = new TextBox();            //    FlowLayoutPanel fl = panel as FlowLayoutPanel;            //    foreach (var v in fl.Controls)            //    {            //        TextBox tb = v as TextBox;            //        if (tb == null)            //            continue;            //        if (tb.ReadOnly)            //            tbName = tb;            //        else            //        {            //            tbValue = tb;            //        }            //    }            //    tbValue.Text = SC.GetItemValue(tbName.Tag as string).ToString();            //}        }    }}
 |