将事件添加到Windows Phone的自定义控件

时间:2012-05-08 13:02:08

标签: c# windows-phone-7 events user-controls custom-component

我正在尝试在Windows手机中进行自定义控制。 我的控件具有名为Val的类型为int的依赖项属性。 我想添加一个事件,用于Val的值的任何变化。

我的代码是:

public int Val
        {
            get { return (int)GetValue(ValProperty); }
            set { SetValue(ValProperty,value); }
        }

    public static readonly DependencyProperty ValProperty = DependencyProperty.Register("Val", typeof(int), typeof(CT1), new PropertyMetadata(0, ValPropertyChanged));

    private static void ValPropertyChanged(DependencyObject target, DependencyPropertyChangedEventArgs e)
    {
        ((CT1)target).OnValChanged((int)e.OldValue,(int)e.NewValue);
    }

    protected virtual void OnValChanged(int oldvalue, int newvalue)
    {
        //TODO
    }

我不知道从这里开始。需要帮助。

1 个答案:

答案 0 :(得分:1)

得到了.. 这应该是这样的。

protected virtual void OnValChanged(int oldvalue, int newvalue)
        {
            if (ValueChanged != null)
                ValueChanged(this, new ValueChangedEventArgs { OldValue = oldvalue, NewValue = newvalue });
        }


        public delegate void ValueChangedEventHandler(object sender, ValueChangedEventArgs e);

        public event ValueChangedEventHandler ValueChanged;