Pump.xaml.cs 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.Windows;
  7. using System.Windows.Controls;
  8. using System.Windows.Data;
  9. using System.Windows.Documents;
  10. using System.Windows.Input;
  11. using System.Windows.Media;
  12. using System.Windows.Media.Imaging;
  13. using System.Windows.Navigation;
  14. using System.Windows.Shapes;
  15. namespace Venus_Themes.UserControls
  16. {
  17. /// <summary>
  18. /// Pump.xaml 的交互逻辑
  19. /// </summary>
  20. public partial class Pump : UserControl
  21. {
  22. public Pump()
  23. {
  24. InitializeComponent();
  25. }
  26. public static readonly DependencyProperty IsOpenProperty = DependencyProperty.Register(
  27. "IsOpen", typeof(bool), typeof(Pump),new PropertyMetadata(false, propertyChangedCallback));
  28. public bool IsOpen
  29. {
  30. get
  31. {
  32. return (bool)this.GetValue(IsOpenProperty);
  33. }
  34. set
  35. {
  36. this.SetValue(IsOpenProperty, value);
  37. }
  38. }
  39. private bool m_Test;
  40. public bool Test
  41. {
  42. set {
  43. check1.IsChecked = true;
  44. m_Test = value;
  45. }
  46. }
  47. private void RadioButton_Checked(object sender, RoutedEventArgs e)
  48. {
  49. IsOpen = true;
  50. }
  51. private void RadioButton_Unchecked(object sender, RoutedEventArgs e)
  52. {
  53. IsOpen = false;
  54. }
  55. private static void propertyChangedCallback(DependencyObject d, DependencyPropertyChangedEventArgs e)
  56. {
  57. Pump pump = d as Pump;
  58. if ((bool)e.NewValue == true)
  59. {
  60. pump.check1.IsChecked = true;
  61. }
  62. else
  63. {
  64. pump.check2.IsChecked = true;
  65. }
  66. }
  67. }
  68. }