私はあなたの質問から理解することは、あなたはItemView.xamlにItemViewModelをバインドしたいとあなたのListBoxは、他のいくつかのXAML(ListBox.xamlを言う)に常駐しています。 ListBox.xamlのItemViewmodelおよびItemVIewに関連するバインドを適用したくない場合。これが問題だった場合、あなた は簡単そう達成するためにDataTemplate
マッピングを作成することができます
<Window
xmlns:vw="namespace of your view files (i.e. xaml files. ListBox.xaml and ItemView.xaml)"
xmlns:ViewModels="namespace of your view model files (i.e. ItemViewModel.cs, ListBoxViewModel.cs)">
<Window.Resources>
<DataTemplate DataType="{x:Type ViewModels:ItemViewModel}">
<vw:ItemView />
</DataTemplate>
</Window.Resources>
<Grid>
<ListBox ItemsSource="{Binding Path=List of ItemViewmodel in ListBoxViewModel.cs}"
</Grid>
</Window>
はその後、あなたはそれが任意のキーなしでリソースに指定されているように、クラスがItemViewにマッピングされますItemViewModel。 ItemView.xamlでバインディングを適用できるようになりました。 ListBoxのItemtemplateを割り当てる必要はありません。自動的に解決されます。あなたは(およびリソースに指定する必要はありません)とにかくItemTemplateにを指定したい場合は、これを書く:
<ListBox.ItemTemplate>
<DataTemplate>
<vw:ItemView />
</DataTemplate>
</ListBox.ItemTemplate>
いずれかの方法で動作するはずです:)これは、Silverlightの
です。 – Ivo
私は最後の文章を理解できません.XAMLとコードを投稿できますか? – anivas