0

I was reading this article - http://msdn.microsoft.com/en-us/magazine/dd419663.aspx

And I came across this piece of code in the WPF Demo application that came with the article.

This template applies a CustomerView to an instance of the CustomerViewModel class shown in the main window.

<DataTemplate DataType="{x:Type vm:CustomerViewModel}">  
    <vw:CustomerView />  
</DataTemplate>

I substituted the angle brackets for square brackets - not sure how to post them.

The code is in the MainWindowResourses.xaml and the code starts on line 19.

Anyone know how I can do this in Silverlight ?? We don't have the DataType and I need to be able to tell the app that this View is associated with this ViewModel - so I can create a tab control with different view like the demo app.

Cheers,

EC

4

1 に答える 1

0

これは、プロジェクト内のすべてのコントロールにスタイルが適用される、WPF の暗黙的なスタイル設定の例です。これはSilverlight ではサポートされていません

これを回避するには、代わりにビュー コントロールをマークアップに配置し、それらの DataContext をビューモデルに設定する必要があります。

<Window.Resources>
    <vm:CustomerViewModel x:Key="theViewModel">  
<Window.Resources>

<vw:CustomerView DataContext={StaticResource theViewModel}/>  

theViewModelリソース セクションから取得する必要はありません。ホストしている XAML コントロール/ページのプロパティである可能性があります。

于 2010-05-13T11:48:40.600 に答える