using GeBoShi.SysCtrl; using Models; using OpenCvSharp; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace GeBoShi.UI.InageShow { public partial class defectLabelImage : UserControl { /// /// code,name /// public Action CodeChangeEvent; public defectLabelImage() { InitializeComponent(); imageBox3.SetIconsVisible(false); imageBox3.SetStatusVisible(false); imageBox3.SetStripVisible(false); init(); } private void init() { var list = SysMgr.Instance.GetDefectItemList().Select(x => new { code = x.Value("code"), name = x.Value("name") }).ToList(); cbLabels.ValueMember = "code"; cbLabels.DisplayMember = "name"; cbLabels.DataSource = list; } [Description("忽略"), Category("自定义")] public bool Checked { get { return this.cbSkip.Checked; } set { this.cbSkip.Checked = value; } } [Description("瑕疵"), Category("自定义")] public string Code { get { return this.cbLabels.SelectedValue.ToString(); } set { this.cbLabels.SelectedValue = value; } } [Description("瑕疵位置"), Category("自定义")] public string DefecLocation { set { this.label1.Text = value; } } [Description("瑕疵图"), Category("自定义")] public Mat Image { //set { this.ucImageView1.loadImage(value); } set { imageBox3.RefreshWindow(value, ImageToolKits.ImageBox.ImageModeEnum.Zoom);//可以不显示区域 } } private void cbLabels_SelectedIndexChanged(object sender, EventArgs e) { string code = cbLabels.SelectedValue.ToString(); string name = cbLabels.Text.ToString(); if (this.Tag != null)//修改不起作用 { var item = (DefectInfo)this.Tag; item.Code = code; item.Name = name; } //API.OutputDebugString("AAAAAAAAA-" + code + " " + name); CodeChangeEvent?.Invoke(code, name); } } }