2012-03-24 5 views
1

私はWPFアプリケーションの開発を開始しました。 TabControlを使用してナビゲートしますが、TabItemのコンテンツをどのように切り替えることができますか?最初のTabItemで私はListViewのUserControlを持っていて、行をダブルクリックするとTabItemの内容が変更されます。Tabcontrolナビゲーション

のTabItem:

<TabItem x:Name="kundenTab"> 
    <TabItem.Header> 
     <StackPanel> 
      <TextBlock Text="Kunden" FontFamily="Verdana" Style="{StaticResource TabItemText}"/> 
     </StackPanel> 
    </TabItem.Header> 
    <z:Kunden Margin="10"/> 
</TabItem> 

リストビュー:

<ListView ItemsSource="{Binding Kunden}" Background="Transparent" BorderThickness="0" Margin="10,20,10,10" ScrollViewer.VerticalScrollBarVisibility="Auto" ScrollViewer.CanContentScroll="True"> 
    <ListView.View> 
     <GridView> 
      <GridViewColumn Header="Vorname" DisplayMemberBinding="{Binding vorname}"/> 
      <GridViewColumn Header="Nachname" DisplayMemberBinding="{Binding nachname}"/> 
      <GridViewColumn Header="Telefonnummer" DisplayMemberBinding="{Binding telnr}" Width="120"/> 
      <GridViewColumn Header="Email" DisplayMemberBinding="{Binding email}" Width="190"/> 
      <GridViewColumn Header="Adresse" DisplayMemberBinding="{Binding adresse}" Width="160"/> 
     </GridView> 
    </ListView.View> 
</ListView> 

誰も私を助けることができますか?

+0

サンプルにUserControlはありません。あなたは何をコンテンツに変更したいですか? "Tabitem"を定義しますか? – Paparazzi

答えて

0

本当に実装の複雑さによって異なります。 ContentPropertyはINPCの名前です

<TabItem x:Name="kundenTab" Content="{Binding ElementName=myDataGrid, Path=SelectedItem.ContentProperty}"> 
    <TabItem.Header> 
     <StackPanel> 
      <TextBlock Text="Kunden" FontFamily="Verdana" Style="{StaticResource TabItemText}"/> 
     </StackPanel> 
    </TabItem.Header> 
    <z:Kunden Margin="10"/> 
</TabItem> 

TabItemコンテンツは、あなたのDataGridの各項目内(INotifyPropertyChangedで)ViewModelにプロパティに保持されている場合は、ちょうどこのようTabItemContentプロパティにそれをバインドします選択した項目のViewModelのプロパティ