Tabcontrol Navigation - PullRequest
       3

Tabcontrol Navigation

1 голос
/ 24 марта 2012

Я начал разрабатывать приложение WPF. Я использую TabControl для навигации, но как я могу переключить содержимое TabItem? В первом TabItem у меня есть UserControl с ListView, и при двойном щелчке по строке я изменю содержимое TabItem.

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:

<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> 

Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 25 марта 2012

Это действительно зависит от сложности вашей реализации.Если содержимое TabItem содержится в свойстве ViewModel (с INotifyPropertyChanged) в каждом элементе вашего DataGrid, просто привяжите его к свойству TabItem Content следующим образом:

<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>

Где ContentProperty - это имя свойства INPC в вашей ViewModel для выбранного элемента.

...