using Newtonsoft.Json.Linq; using Sunny.UI; using System.Collections.Generic; using System.Linq; namespace LeatherApp.Page { public partial class FSelDefect : UIEditForm { public List lstCodes = new List(); private string _modelName; public FSelDefect(string modelName, List codes) { InitializeComponent(); _modelName = modelName; init(modelName, codes); } private void init(string modelName, List codes) { JArray defectItemList; Config.LoadModelDefectItemList(modelName, out defectItemList); var list = defectItemList.Select(x => new { code = x.Value("code"), name = x.Value("name") }).ToList(); foreach(var item in list) { UICheckBox uiCheckbox=new UICheckBox(); uiCheckbox.Tag = item.code; uiCheckbox.Text = item.name; if(codes==null || codes.Count==0) uiCheckbox.Checked = true; else uiCheckbox.Checked = codes.Contains(item.code); this.flowLayoutPanel1.Controls.Add(uiCheckbox); } } private void btnOK_Click(object sender, System.EventArgs e) { for (int i = 0; i < this.flowLayoutPanel1.Controls.Count; i++) { UICheckBox uiCheckbox = this.flowLayoutPanel1.Controls[i] as UICheckBox; if (uiCheckbox.Checked) lstCodes.Add(uiCheckbox.Tag.ToString()); } if (lstCodes.Count < 1) { UIMessageTip.ShowError("必需选择缺陷!", 2000); return; } } } }