Q
從靜態上下文
2
A
回答
6
由於(非附件)DependencyProperties被限制在其所有者類型設定你可以創建一個實例方法來保存你的邏輯和鑄造調用從靜態方法的DependencyObject:
public static readonly DependencyProperty IsInReadModeProperty = DependencyProperty.Register(
"IsInReadMode",
typeof(bool),
typeof(RegCardSearchForm),
new UIPropertyMetadata(false, ReadModeChanged));
private static void ReadModeChanged(DependencyObject dObj, DependencyPropertyChangedEventArgs e)
{
RegCardSearchForm form = dObj as RegCardSearchForm;
if (form != null)
form.ReadModeChanged((bool)e.OldValue, (bool)e.NewValue);
}
protected virtual void ReadModeChanged(bool oldValue, bool newValue)
{
// TODO: Add your instance logic.
}
0
如果ReadModeChanged
是您的按鈕的容器的靜態方法,那麼只需使它成爲容器的實例方法。
1
一種方法是從DependencyObject
擴展一個類,該類將包含要操縱的控件的設置/獲取。並通過訪問DependencyObject
在ReadModeChanged
事件中處理它。
This example可能會有所幫助。
...示例派生自DependencyObject以創建一個新的抽象類。然後,該課程將註冊一個附屬財產,幷包括支持成員。
0
這些東西必須是靜態的才能使DependencyProperty正常工作但是,您的PropertyChanged處理程序的參數可能是您需要的東西:它是屬性剛更改的實例。我懷疑這會適用於你:
public static void ReadModeChanged(DependencyObject d,
DependencyPropertyChangedEventArgs e)
{
if ((bool)e.NewValue)
{
RegCardSearchForm c = (RegCardSearchForm)d;
c.btnSearch.Visibility = Visibility.Collapsed;
c.btnExport.Visibility = Visibility.Collapsed;
c.cbExportWay.Visibility = Visibility.Collapsed;
}
}
相關問題
- 1. 的Java不能從靜態上下文
- 2. 如何從靜態上下文中引用非靜態方法
- 3. 非靜態方法不能從靜態上下文中引用?
- 4. 非靜態字符串不能從靜態上下文
- 5. 非靜態方法不能從靜態上下文中引用
- 6. 非靜態方法不能從靜態上下文中引用?
- 7. 從靜態上下文引用的非靜態變量
- 8. JAVA:非靜態變量randomNums不能從靜態上下文
- 9. 非靜態變量不能從靜態上下文中引用
- 10. 非靜態方法...不能從靜態上下文
- 11. 非靜態方法不能從靜態上下文
- 12. 非靜態方法()不能從靜態上下文
- 13. 非靜態方法不能從靜態上下文中引用
- 14. 非靜態setGravity不能從靜態上下文中引用
- 15. 非靜態變量列表不能從靜態上下文
- 16. 非靜態方法不能從靜態上下文中引用
- 17. 從非靜態的上下文調用靜態方法
- 18. 從靜態上下文中訪問非靜態方法
- 19. 非靜態變量不能從靜態上下文
- 20. 「不能從靜態上下文中引用非靜態變量」?
- 21. Java靜態上下文
- 22. 靜態上下文警告
- 23. 靜態上下文錯誤
- 24. 非靜態變量pRef無法從靜態上下文中引用
- 25. 非靜態變量名稱不能從靜態上下文中引用
- 26. 非靜態方法getAssets不能從靜態上下文中引用(Java)(Android)
- 27. setDisplayHomeAsUpEnabled()錯誤:無法從靜態上下文中引用非靜態方法
- 28. 非靜態方法generatePublic(keySpec)根據不能從靜態上下文
- 29. java:非靜態變量不能從靜態上下文中引用錯誤
- 30. JAVA「非靜態變量,這不能從靜態上下文中引用」
爲什麼'ReadModeChanged'是靜態的? – 2010-10-28 07:45:30
denepdency屬性必須始終是靜態的嗎? PropertyMetadata類需要靜態屬性更改方法 – Polaris 2010-10-28 07:58:26
什麼對象具有此屬性? – 2010-10-28 09:35:44