2011-09-21 49 views
3

我有UserControl爲多個演示文稿進行過濾,而這些演示文稿又有一個ContentControl。內容是演示文稿中各個不同的過濾控件。數據模板中的數據綁定不起作用

該方案按照預期的方式工作,但數據綁定沒有。輸出中沒有數據綁定錯誤。 DataContext是從視圖模型調用PimMasterVm,否則似乎正確接線(即,5可用人的狀態等)

有人可以幫我解決這個問題嗎?

乾杯,
Berryl

濾波控制

enter image description here

<Grid> 
    <Border Style="{StaticResource FilterPanelBorderStyle}"> 
     <StackPanel Orientation="Horizontal" x:Name="myFilterPanel" > 
      <ContentControl x:Name="ctrlFilters" 
          ContentTemplate="{Binding Path=FilterContentKey, Converter={StaticResource filterTemplateContentConv}}" /> 
      <Button x:Name="btnClearFilter" Style="{StaticResource FilterPanelClearButtonStyle}" /> 
      <Label x:Name="lblStatus" Style="{StaticResource FilterPanelLabelStyle}" Content="{Binding Status}" /> 

     </StackPanel> 
    </Border> 

</Grid> 

數據模板(資源)

<DataTemplate x:Key="pimFilterContent"> 
    <StackPanel Orientation="Horizontal" > 
     <cc:SearchTextBox x:Name="stbLastNameFilter" 
      Style="{StaticResource FilterPanelSearchTextBoxStyle}" 
      Text="{Binding Path=LastNameFilter, UpdateSourceTrigger=PropertyChanged}" 
         /> 
     <cc:SearchTextBox x:Name="stbFirstNameFilter" 
      Style="{StaticResource FilterPanelSearchTextBoxStyle}" 
      Text="{Binding Path=FirstNameFilter, UpdateSourceTrigger=PropertyChanged}" 
         /> 
    </StackPanel> 
</DataTemplate> 

回答

3

有在的DataContext 「ctrlFilters」 ContentControl中,將其綁定的當前視圖模型內容屬性:

... 

    <ContentControl x:Name="ctrlFilters" 
        Content="{Binding}" 
        ContentTemplate="{Binding Path=FilterContentKey, Converter={StaticResource filterTemplateContentConv}}" /> 

...