这可能是一个非常简单的问题,但此时我自己也很困惑,我看不出答案。简而言之,我有一个包含内容控件的窗口。我正在使用Caliburn.Micro的惯例来“定位”视图。
窗口如下所示:
<Window x:Class="Views.MainWindowView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<TextBox/>
<ContentControl x:Name="MyViewModel" Height="Auto" Background="Blue"/>
</Grid>
</Window>
视图本身已成功找到,屏幕显示如我所料。但是,MyViewModel需要进行服务调用以根据文本框中输入的内容获取信息。
所以,我似乎无法弄清楚是如何将这些信息从文本框传递给视图模型。我想到了几个选项,但它们似乎都是太多的工作,这让我觉得我错过了一些简单的东西。
非常感谢
答案 0 :(得分:2)
就像你说的那样,你可以做很多事情:
您可以在MyViewModel
上公开属性并将其设置在其中
MainWindowView
。
您可以使用EventAgregator
,从中发布活动
MainWindowView
并从MyViewModel
订阅该活动。
使用MEF可以在两者之间注入共享资源
ViewModels,在MainWindowViewModel
中设置,并能够访问它
来自MyViewModel
。