タブにイメージを表示するには、TabItem に Image を配置します。
下記は、タブにイメージとテキストを表示する例です。
TabItem に StackPanel を配置し、その中に Image と TextBlock を配置しています。
XAMLの例
<TabControl Name="tabControl1" Height="120">
<TabItem Name="tabItem1">
<TabItem.Header>
<StackPanel Orientation="Horizontal">
<Image Source="./Images\book_addressHS.png" Width="16" Height="16" Margin="2"/>
<TextBlock Text="Header1" />
</StackPanel>
</TabItem.Header>
<Grid />
</TabItem>
<TabItem Name="tabItem2">
<TabItem.Header>
<StackPanel Orientation="Horizontal">
<Image Source="./Images\Book_angleHS.png" Width="16" Height="16" Margin="2"/>
<TextBlock Text="Header2" />
</StackPanel>
</TabItem.Header>
<Grid />
</TabItem>
</TabControl>
VBの例
Private Sub Window_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
Dim tabItem3 As New TabItem
Dim stackPanel As New StackPanel
Dim bi As New BitmapImage
Dim img As New Image
Dim tbName As New TextBlock
'Imageの設定
bi.BeginInit()
bi.UriSource = New Uri("Images/Book_openHS.png", UriKind.Relative)
bi.EndInit()
img.Source = bi
img.Height = 16
img.Width = 16
img.Margin = New Thickness(2.0)
'TextBlockの設定
tbName.Text = "Header3"
'水平方向に配置
stackPanel.Orientation = Orientation.Horizontal
'StackPanelにImageとTextBlockを追加
stackPanel.Children.Add(img)
stackPanel.Children.Add(tbName)
'ヘッダーにStackPanelを配置
tabItem3.Header = stackPanel
'タブコントロールに作成した tabItem3 を追加
TabControl1.Items.Add(tabItem3)
End Sub
C#の例
private void Window_Loaded(object sender, RoutedEventArgs e)
{
TabItem tabItem3 = new TabItem();
StackPanel stackPanel = new StackPanel();
BitmapImage bi = new BitmapImage();
Image img = new Image();
TextBlock tbName = new TextBlock();
// Imageの設定
bi.BeginInit();
bi.UriSource = new Uri("Images/Book_openHS.png", UriKind.Relative);
bi.EndInit();
img.Source = bi;
img.Height = 16;
img.Width = 16;
img.Margin = new Thickness(2.0);
// TextBlock の設定
tbName.Text = "Header3";
// 水平方向に配置
stackPanel.Orientation = Orientation.Horizontal;
// StackPanelにImageとTextBlockを追加
stackPanel.Children.Add(img);
stackPanel.Children.Add(tbName);
// ヘッダーにStackPanelを配置
tabItem3.Header = stackPanel;
// タブコントロールに作成した tabItem3 を追加
tabControl1.Items.Add(tabItem3);
tabItem3.Header = stackPanel;
}
