我知道您將使用此方法調用ViewModel上的方法,但出於好奇,您將如何在實例上連接事件處理程序該視圖相當於將其以代碼方式連接在後面。CallMethodAction:我如何將一個視圖的實例稱爲TargetObject
2
A
回答
1
我想你可能是在這樣的事情後面(忽略這個具體的例子最好是用命令完成)。
<Button Content="Click this">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<ei:CallMethodAction TargetObject="{Binding}" MethodName="SomeMethod" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
+1
這不起作用:空綁定語法引用視圖的當前數據上下文,而不是視圖本身。在MVVM的情況下,這會讓你進入虛擬機。 – 2011-04-29 23:54:37
3
如果您的窗口代碼隱藏方法中的對象是窗口本身,則TargetObject是具有要調用的方法的對象。你可以通過它的名字綁定到它:
<UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions"
...etcetera...
x:Name="UserControl">
所以你CallMethodAction是:
<ei:CallMethodAction MethodName="MyMethod"
TargetObject="{Binding ElementName=UserControl, Mode=OneWay}"/>
相關問題
- 1. 將CallMethodAction中的TargetObject設置爲XAML中父級DataContext的ViewModel
- 2. 如何將TreeView的一個實例的節點添加到同一樹形視圖的另一個實例
- 3. 我將如何顯示一個視圖作爲另一個視圖的疊加?
- 4. iOS:一個子視圖的xcode實例
- 5. 如何爲我的表視圖實現圖像細節視圖?
- 6. 爲什麼我的課程的一個實例被視爲一個數組?
- 7. 查看實例化另一個視圖
- 8. 如何爲EmberJS中的每個視圖實例創建一個控制器實例?
- 9. 如何使用Spring-Quartz中的「MethodInvokingJobDetailFactoryBean」創建「targetObject」的原型實例?
- 10. 從一個表視圖實例化多個視圖控制器
- 11. 如何將實體從一個jsf視圖傳輸到另一個jsf視圖?
- 12. Python替換 - 將多個實例視爲一個
- 13. 如何實例化和顯示從另一個視圖模型
- 14. 如何在另一個視圖控制器中控制實例
- 15. 將多個實例壓縮爲一個
- 16. 爲什麼我的MVC Razor視圖不希望實例化一個ResourceManager
- 17. 爲什麼我的視圖中的Rails實例變量爲零?
- 18. 如何讓一個類的實例成爲Jena中另一個類的實例?
- 19. 我們如何爲一個窗口創建一個單例實例?
- 20. 如何將一個RDS實例的snaphsot複製到另一個RDS實例?
- 21. 將對象實例轉換爲另一個實例的引用?
- 22. 如何將一個redis實例拆分爲兩個?
- 23. 如何將字符串轉換爲as3中的實例名稱
- 24. 如何將一個實例表示爲鍵入的值
- 25. 如何讓我的一個視圖成爲唯一的風景
- 26. 爲視圖實例指定一個分類術語
- 27. 我有一個SCNScene實例。我如何提取每個SCNGeometry實例?
- 28. 如何將一個視圖移動到另一個視圖?
- 29. 如何將我的AppDelegate定義爲它實例化的類的實例變量?
- 30. 如何實現一個線程視圖?
你是問你怎麼會有援引爲_or_你將如何調用一個事件的響應方法事件處理程序作爲方法? – AnthonyWJones 2010-12-10 22:48:25
@AnthonyWJones:CallMethodAction上有一個TargetObject屬性。我需要引用該觸發器所在視圖的實例。我能夠通過用戶控件的名稱來引用它,但它給了我空引用錯誤。 – epitka 2010-12-13 13:23:40