1 回答

TA貢獻2039條經(jīng)驗 獲得超8個贊
像往常一樣定義一個事件(如果有意義的話,可以將其定義為路由事件),然后在引發(fā)該事件的地方注冊一個依賴屬性回調(diào)。像這樣的東西:
public event EventHandler ValueChanged;
public double Value
{
? ? get { return (double)GetValue(ValueProperty); }
? ? set { SetValue(ValueProperty, value); }
}
public static readonly DependencyProperty ValueProperty =
? ? DependencyProperty.Register("Value", typeof(double), typeof(SpeedoMeter), new PropertyMetadata(0.0,
? ? ? ? OnChanged,
? ? ? ? OnCoerceValueChanged));
private static void OnChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
? ? SpeedoMeter speedoMeter = (SpeedoMeter)d;
? ? EventHandler handler = speedoMeter.ValueChanged;
? ? if (handler != null)
? ? {
? ? ? ? handler(speedoMeter, EventArgs.Empty);
? ? }
}
顯然,您可以隨意命名您的活動和財產(chǎn)。例如,如果您擁有Value財產(chǎn)并想要舉辦ValueChanged活動,您可以從類似RangeBase或類似的事物中獲得。這只是當依賴項屬性更改時如何引發(fā)自定義事件的示例。
- 1 回答
- 0 關(guān)注
- 137 瀏覽
添加回答
舉報