radiobutton 的数据可放在python脚本里读取,便于修改

来源:互联网 发布:java 发布到docker 编辑:程序博客网 时间:2024/05/16 18:10


radiobutton如果固定的写在Xaml文件里,遇到改动的话需要修改程序,优克斯股票软件里的radiobutton统一放到了Python脚本文件里调用set,当需要修改的时候直接操作py脚本文件 以下是我做的一个小demo,直接在程序中调用set方法

  public MainWindow()        {            InitializeComponent();            set("te", "aaa");            set("te", "bbb");            set("te", "ccc");            set("te", "ddd");            set("te", "eee");            var list = configs["te"];            Radiobutton rb=new Radiobutton("te");              foreach (var i in list)            {                rb.addButton(i);            }            this.xxx.Children.Add(rb);        }        Dictionary<string, List<object>> configs = new Dictionary<string, List<object>>();        public void set(string label, string value)        {            if (configs.ContainsKey(label))            {                configs[label].Add(value);                return;            }            var list = new List<object>();            configs.Add(label, list);            list.Add(value);        }
  class Radiobutton:Grid    {        List<RadioButton> lrb = new List<RadioButton>();        string name = null;        public Radiobutton(string name)        {            this.name = name;        }        public void addButton(object content)        {            this.ColumnDefinitions.Add(new ColumnDefinition()//增加一列            {                Width = new System.Windows.GridLength(58),            });            var b = new RadioButton()            {                Content = content,                GroupName = name,            };            //b.Checked += new System.Windows.RoutedEventHandler(b_Checked);            Grid.SetColumn(b, lrb.Count);            lrb.Add(b);            if (lrb.Count == 1)            {                b.IsChecked = true;            }            this.Children.Add(b);        }    }



0 0