using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; using XHandler.Class.DataEx; using XHandler.Class; using XHandler.Controls; using System.ComponentModel; namespace XHandler.View.MethodProperty { /// /// SetBarcodeDlg.xaml 的交互逻辑 /// public partial class SetBarcodeDlg : UserControl { public SetBarcodeDlg() { InitializeComponent(); } #region custom event public event EventHandler closeEvent; /// /// 确定 /// public static readonly RoutedEvent OKRoutedEvent = EventManager.RegisterRoutedEvent("OKEvent", RoutingStrategy.Bubble, typeof(CustomEvent.CustomRoutedEventHandler), typeof(SetLabelDlg)); [Description("OKEvent")] public event CustomEvent.CustomRoutedEventHandler OKEvent { add { this.AddHandler(OKRoutedEvent, value); } remove { this.RemoveHandler(OKRoutedEvent, value); } } private void RaiseOKEvent(string str) { CustomRoutedEventArgs arg = new CustomRoutedEventArgs(OKRoutedEvent, str); this.RaiseEvent(arg); } #endregion private ControlLabware controlLabware; private LabwareEx labwareEx; public SetBarcodeDlg(ControlLabware labware, LabwareEx lb) { InitializeComponent(); controlLabware = labware; labwareEx = lb; textboxLabel.Text = labware.Barcode; } private void btnOK_Click(object sender, RoutedEventArgs e) { if (EventResponseController.Instance.CanExecute() == false) return; if (string.IsNullOrEmpty(textboxLabel.Text.Trim())) { textboxLabel.BorderThickness = new Thickness(1, 1, 1, 1); tbTips.Text = Properties.Resources.strCannotEmpty; return; } controlLabware.Barcode = textboxLabel.Text.Trim(); labwareEx.labware_barcode = textboxLabel.Text.Trim(); RaiseOKEvent(textboxLabel.Text.Trim()); } private void UserControl_Loaded(object sender, RoutedEventArgs e) { textboxLabel.Focus(); textboxLabel.SelectAll(); } private void Button_Click(object sender, RoutedEventArgs e) { if (EventResponseController.Instance.CanExecute() == false) return; closeEvent?.Invoke(this, EventArgs.Empty); } } }