2013-02-21 157 views
0

我想在MVVM方式上绑定TabItem属性的“Header”。如何从MVVM方式绑定WPF TabItem的属性?

我将“XamTabControl”的“ItemsSource”属性绑定到视图模型列表(List<MyTabItem> MyTabItem也是视图模型)。

这里是XAML代码

<igWindows:XamTabControl 
     Height="198" 
     HorizontalAlignment="Left" 
     Margin="0,54,0,0" 
     ItemsSource="{Binding Tabs}" 
     Name="xamTabControl1" 
     VerticalAlignment="Top" 
     Width="651"> 

     <!-- this is the body of the TabItem template--> 
     <igWindows:XamTabControl.ItemTemplate> 
      <DataTemplate> 
       <TextBlock 
         Text="{Binding Header}" /> 
      </DataTemplate> 
     </igWindows:XamTabControl.ItemTemplate> 

     <igWindows:XamTabControl.ContentTemplate> 
      <!-- this is the body of the TabItem template--> 
      <DataTemplate> 
       <TextBlock 
         Text="{Binding Content}" /> 
      </DataTemplate> 
     </igWindows:XamTabControl.ContentTemplate> 
</igWindows:XamTabControl> 

这里是视图模型。

private ObservableCollection<TabItem> tabs; 
public ObservableCollection<TabItem> Tabs 
{ 
    get 
    { 
      return tabs; 
    } 
    set 
    { 
      tabs = value; 
      NotifyPropertyChanged("Tabs"); 
    } 
} 

要显示选项卡标题,我在XamlTabControl的ItemTemplate内插入了一个文本块。我想通过使用TabItemEx属性的“Header”属性而不是使用文本块来显示标题。 我也想这样做“CloseButtonVisibility”属性。

+1

我找到了答案。 http://stackoverflow.com/questions/686074/wpf-tabcontrol-databinding – Haritha 2013-02-21 05:19:43

回答

0

我从stackoverflow得到了答案。请看这post