WPF 사용자 정의 속성 및 트리거

public class MEFACheckBox : CheckBox
    {

        //public enum CheckBoxSatus
        //{
        //    [Description(" ")]
        //     None=-1,
        //    [Description(" ")]
        //    error=0,
        //    [Description(" ")]
        //    correct=1,
        //}
        public MEFACheckBox()
        {
            base.DefaultStyleKey = typeof(MEFACheckBox);
            base.IsThreeState = false;
            this.Click += MEFACheckBox_Click;
            CheckValue = "None";

        }
        public string CheckValue
        {
            get { return (string)GetValue(CheckValueProperty); }
            set { SetValue(CheckValueProperty, value); }
        }
        public static readonly DependencyProperty CheckValueProperty =
            DependencyProperty.Register("CheckValue", typeof(string), typeof(MEFACheckBox), new UIPropertyMetadata(""));
// 。
        static MEFACheckBox()
        {
            DefaultStyleKeyProperty.OverrideMetadata(typeof(MEFACheckBox), new FrameworkPropertyMetadata(typeof(MEFACheckBox)));

        }
        private void MEFACheckBox_Click(object sender, RoutedEventArgs e)
        {


            switch (CheckValue)
            {
                // -- 
                case "None":
                    CheckValue = "correct";
                    break;
                // -- 
                case "error":
                    CheckValue = "None";
                    break;
                // -- 
                case "correct":
                    CheckValue = "error";
                    break;
                default:
                    break;

            }
        }

    }

    
    

좋은 웹페이지 즐겨찾기