123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Linq;
- using System.Runtime.CompilerServices;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows;
- using System.Windows.Controls;
- namespace Compdfkit_Tools.Common
- {
- public class HomePageButton : Button
- {
- public static readonly DependencyProperty IsToggledProperty =
- DependencyProperty.Register("IsToggled", typeof(bool), typeof(HomePageButton), new PropertyMetadata(false));
- public bool IsToggled
- {
- get { return (bool)GetValue(IsToggledProperty); }
- set { SetValue(IsToggledProperty, value); }
- }
- public static readonly DependencyProperty CanChangeProperty =
- DependencyProperty.Register("CanChange", typeof(bool), typeof(HomePageButton), new PropertyMetadata(true));
- public bool CanChange
- {
- get { return (bool)GetValue(CanChangeProperty); }
- set { SetValue(CanChangeProperty, value); }
- }
- public static readonly RoutedEvent ToggledEvent =
- EventManager.RegisterRoutedEvent("Toggled", RoutingStrategy.Bubble, typeof(RoutedEventHandler), typeof(HomePageButton));
- public event RoutedEventHandler Toggled
- {
- add { AddHandler(ToggledEvent, value); }
- remove { RemoveHandler(ToggledEvent, value); }
- }
- public HomePageButton()
- {
- Click += HomePageButton_Click; ;
- }
- private void HomePageButton_Click(object sender, RoutedEventArgs e)
- {
- if (CanChange)
- {
- IsToggled = !IsToggled;
- RaiseToggledEvent();
- }
- }
- private void RaiseToggledEvent()
- {
- RoutedEventArgs newEventArgs = new RoutedEventArgs(HomePageButton.ToggledEvent);
- RaiseEvent(newEventArgs);
- }
- }
- }
|