0

MVVMの方法で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」プロパティにもこれを行いたいです。

4

1 に答える 1

0

から回答をいただきましたstackoverflowこの投稿を見てください

于 2013-04-05T10:07:12.513 に答える