簡體   English   中英

WPF依賴項屬性返回值

[英]WPF dependency property return value

我是WPF的新手。

假設我定義了一個int依賴屬性。 DP的目的是返回值+1(請參見代碼)。 在.Net 2.0中,我會寫:

private int _myValue = 0;
    public int MyValue
    {
        get { return _myValue + 1; }
        set { _myValue = value; }
    }

您將如何聲明達到類似行為的DP?


提供的強制轉換僅適用於Set操作。 我想修改“獲取”結果。

您可以這樣間接實現:

public static readonly DependencyProperty ValueProperty =
    DependencyProperty.Register("Value", typeof(int), typeof(OwnerClass),
        new FrameworkPropertyMetadata(0, null, new CoerceValueCallback(CoerceValue)));

public int Value
{
    get { return (int)GetValue(ValueProperty); }
    set { SetValue(ValueProperty, value); }
}

private static object CoerceValue(DependencyObject d, object value)
{
    return (int) value + 1;
}

檢查此鏈接以獲取有關強制的解釋。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM