私は最初の Caliburn WPF アプリケーションを構築していますが、次の問題に直面しています。
検索と結果の 2 つのユーザー コントロールをロードする親ビューがあります。検索ユーザー コントロールで検索ボタンをクリックすると、結果ユーザー コントロールに結果をロードしたくありません。
親ビュー:
<ContentControl x:Name="SearchViewModel"/>
<ContentControl x:Name="ResultsViewModel"/>
親 VM
[Export(typeof(IMainViewModel))]
public class ParentViewModel : Screen, IMainViewModel{
public SearchViewModel SearchViewModel { get; set; }
public ResultsViewModel ResultsViewModel { get; set; }
public ParentViewModel()
{
SearchViewModel = new SearchViewModel();
ResultsViewModel = new ResultsViewModel();
}
}
検索ビュー
<TextBox x:Name="Term"/>
<Button Content="Search" x:Name="Search"/>
VM の検索
public class SearchViewModel : PropertyChangedBase
{
private string _term;
public string Term
{
get { return _term; }
set
{
_instrumentId = value;
NotifyOfPropertyChange(() => _term);
}
}
public void Search()
{
//Call WCF Service
//Send results to results user control?
}
}
では、実際にはどうすれば異なるユーザーコントロール間でデータ/メソッドを渡したりアクセスしたりできますか? caliburn micro を使用してモデルを表示できますか?