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), <span style="color:#ff6666;">new UIPropertyMetadata("")</span>);
//这句话很重要不然触发器没用。
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: