1

同じインターフェイスを持つオブジェクトのリストを持つ ViewModel があり、それらをビューにUserControl表示するために、ビューがバインドするビューモデルに のリストがあります。UserControlリスト内のさまざまなタイプの具体的なオブジェクトのテンプレートを作成し、リストを作成してそれにバインドする代わりに、WPF に正しいテンプレートを適用させることができるかどうか疑問に思っていました。

基本的に私は持っています:

<StackPanel 
            Margin="0,0,20,0"
            >                
            <my2:ProfileIdentificationView />
            <ItemsControl
                ItemsSource="{Binding Path=ProfileSections}">
                <ItemsControl.ItemTemplate>
                    <DataTemplate>
                    </DataTemplate>
                </ItemsControl.ItemTemplate>
            </ItemsControl>
        </StackPanel>
    </DockPanel>

ItemsSource バインディングは、ユーザー コントロールのリストです。ProfileSection のタイプに基づいて、ここでこれらの UserControls の外観を適用する方法を探しています。1 つのタイプは IIS セクションであり、別のタイプはユーザー セクションです。

4

1 に答える 1

3

DataTemplatesを使用して、ビューモデルの暗黙を作成できますDataTemplate.DataTypex:Type文字列はXML要素タグとして解釈されるため(XMLの暗黙的なテンプレート化を可能にするため)、必ずマークアップ拡張機能を使用してください。

于 2012-07-06T15:33:47.583 に答える