2011-01-23 78 views
0

我有一个简单的WP7程序,我想在列表框和Diagramm中显示我的模型对象。在DataTemplate中使用ListBox控件

我想使用数据模板和选择器类,它返回正确的模板。 的选择发生在视图模型的布尔属性,并返回ListBoxTemplate或DiagrammTemplate

我的页面资源看起来是这样的:

 <local:NewTemplateSelector x:Key="NewTemplateSelector"> 
     <local:NewTemplateSelector.ListBoxTemplate>   
       <DataTemplate> 
       <StackPanel> 
        <ListBox 
       x:Name="MainListBox" Margin="6,205,35,136" ItemsSource="{Binding Acts}"       
        ItemTemplate="{Binding ElementName=Page, Path=Orientation, 
        Converter={StaticResource OrientationToListItemTemplate}}" />              
       </StackPanel> 
      </DataTemplate> 

     </local:NewTemplateSelector.ListBoxTemplate> 

     <local:NewTemplateSelector.DiagrammTemplate> 
      <DataTemplate> 
       <TextBlock Text="Diagramm"/> 
      </DataTemplate> 
     </local:NewTemplateSelector.DiagrammTemplate> 

    </local:NewTemplateSelector> 

我的内容面板只有1个元素:

<ContentControl ContentTemplate="{Binding IsDiagramm, 
    Converter={StaticResource NewTemplateSelector}}" HorizontalAlignment="Left" HorizontalContentAlignment="Left" /> 

我当我运行这个时,总是得到一个空白屏幕。 我的选择器类返回正确的模板,我可以在调试器中看到它。 当我用简单的文本块替换模板中的列表框时,将显示文本块,因此我怀疑数据绑定存在问题。

但是当模板中的列表框没有任何数据模板插入到我的内容面板时,它可以正常工作。

我任何提示?

+0

如何以及何时将数据放入内容控制中? – thomasmartinsen 2011-01-23 22:59:03

回答