| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- 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
- {
- /// <summary>
- /// CustomQuickButton.xaml 的交互逻辑
- /// </summary>
- public partial class CustomQuickButton : UserControl
- {
- /// <summary>
- /// 点击快捷定位
- /// </summary>
- public event Action<ButtonEntity> 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<ButtonEntity> QuickButtonSource
- {
- get { return (List<ButtonEntity>)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<ButtonEntity>), 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<ButtonEntity> 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;
- }
- }
- }
- }
- }
- }
|