C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML
Next: We add some sub-controls to the TabItems. Try adding your favorite control. Here I add TextBlocks, and modify the Content in each one to be unique.
Note: By default, the Grid control within a TabControl has a Background property set. This accounts for the gray color.
Example markup: XAML
<Window x:Class="WpfApplication25.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<TabControl HorizontalAlignment="Left"
Height="299"
Margin="10,10,0,0"
VerticalAlignment="Top"
Width="497"
SelectionChanged="TabControl_SelectionChanged">
<TabItem Header="Cat">
<Grid Background="#FFE5E5E5">
<TextBlock HorizontalAlignment="Left"
Margin="10"
TextWrapping="Wrap"
Text="Take pictures of me and put them on the Internet. Meow."
VerticalAlignment="Top"
Width="471"/>
</Grid>
</TabItem>
<TabItem Header="Mouse">
<Grid Background="#FFE5E5E5">
<TextBlock HorizontalAlignment="Left"
Margin="10"
TextWrapping="Wrap"
Text="I want some cheese."
VerticalAlignment="Top"
Width="471"/>
</Grid>
</TabItem>
</TabControl>
</Grid>
</Window>
Example program: C#
using System.Windows;
using System.Windows.Controls;
namespace WpfApplication25
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void TabControl_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
// ... Get TabControl reference.
var item = sender as TabControl;
// ... Set Title to selected tab header.
var selected = item.SelectedItem as TabItem;
this.Title = selected.Header.ToString();
}
}
}
And: We cast the SelectedItem to the TabItem type. Finally we set the Title of the Window to the Header of the TabItem.