using ivf_tl_Entity.GlobalEntitys; using System; using System.Collections.Generic; using System.Collections.ObjectModel; 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; namespace ivf_tl_Operate.CustomUserControls { /// /// CustomQuickButton.xaml 的交互逻辑 /// public partial class CustomQuickButton : UserControl { /// /// 点击快捷定位 /// public event Action ClickQuickPositionEvent; public CustomQuickButton() { InitializeComponent(); } private void KuaiJie_MouseUp(object sender, MouseButtonEventArgs e) { if (!(sender is Border border)) { return; } if (!(border.Tag is ButtonEntity markNew)) { return; } ClickQuickPositionEvent?.Invoke(markNew); } public List QuickButtonSource { get { return (List)GetValue(QuickButtonSourceProperty); } set { SetValue(QuickButtonSourceProperty, value); } } // Using a DependencyProperty as the backing store for QuickButtonSource. This enables animation, styling, binding, etc... public static readonly DependencyProperty QuickButtonSourceProperty = DependencyProperty.Register("QuickButtonSource", typeof(List), typeof(CustomQuickButton), new PropertyMetadata(null, new PropertyChangedCallback(QuickButtonSourcePropertyMetadata))); private static void QuickButtonSourcePropertyMetadata(DependencyObject d, DependencyPropertyChangedEventArgs e) { if (!(d is CustomQuickButton source)) return; source._kuaiJie1_TextBlock.Text = ""; source._kuaiJie2_TextBlock.Text = ""; source._kuaiJie3_TextBlock.Text = ""; source._kuaiJie4_TextBlock.Text = ""; source._kuaiJie5_TextBlock.Text = ""; source._kuaiJie6_TextBlock.Text = ""; source._kuaiJie7_TextBlock.Text = ""; source._kuaiJie1_Border.Tag = null; source._kuaiJie2_Border.Tag = null; source._kuaiJie3_Border.Tag = null; source._kuaiJie4_Border.Tag = null; source._kuaiJie5_Border.Tag = null; source._kuaiJie6_Border.Tag = null; source._kuaiJie7_Border.Tag = null; source.Visibility = Visibility.Hidden; if (!(e.NewValue is List aa)) return; int k = aa.Count; if (k > 0) { source.Visibility = Visibility.Visible; for (int i = 0; i < k; i++) { var item = aa[i]; switch (i) { case 0: source._kuaiJie1_TextBlock.Text = item.buttonName; source._kuaiJie1_Border.Tag = item; break; case 1: source._kuaiJie2_TextBlock.Text = item.buttonName; source._kuaiJie2_Border.Tag = item; break; case 2: source._kuaiJie3_TextBlock.Text = item.buttonName; source._kuaiJie3_Border.Tag = item; break; case 3: source._kuaiJie4_TextBlock.Text = item.buttonName; source._kuaiJie4_Border.Tag = item; break; case 4: source._kuaiJie5_TextBlock.Text = item.buttonName; source._kuaiJie5_Border.Tag = item; break; case 5: source._kuaiJie6_TextBlock.Text = item.buttonName; source._kuaiJie6_Border.Tag = item; break; case 6: source._kuaiJie7_TextBlock.Text = item.buttonName; source._kuaiJie7_Border.Tag = item; break; default: break; } } } } } }