我可以將數據導入到我的TabControl中,但標題周圍有框架,我無法從標籤頁到標籤頁。如何將List集合綁定到WPF中的TabControl標頭?
我在做這個TabControl上的XAML綁定語法有什麼問題?
XAML:
<StackPanel>
<TabControl x:Name="TheTabControl">
<TabControl.ItemTemplate>
<DataTemplate>
<TabItem Header="{Binding LastName}">
<StackPanel Margin="10" Orientation="Horizontal">
<TextBlock Text="{Binding FirstName}"/>
<TextBlock Text=" "/>
<TextBlock Text="{Binding LastName}"/>
</StackPanel>
</TabItem>
</DataTemplate>
</TabControl.ItemTemplate>
</TabControl>
<TabControl>
<TabItem Header="Tab1">
<TextBlock Text="This is a test of tab 1"/>
</TabItem>
<TabItem Header="Tab2">
<TextBlock Text="This is a test of tab 2"/>
</TabItem>
</TabControl>
</StackPanel>
後面的代碼:
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
//create all
List<Customer> customers = new List<Customer>();
customers.Add(new Customer { FirstName = "Jim", LastName = "Smith", NumberOfContracts = 23 });
customers.Add(new Customer { FirstName = "Jane", LastName = "Smith", NumberOfContracts = 23 });
customers.Add(new Customer { FirstName = "John", LastName = "Tester", NumberOfContracts = 23 });
//show
TheListBox.ItemsSource = customers;
}
}
public class Customer
{
public string FirstName { get; set; }
public string LastName { get; set; }
public int NumberOfContracts { get; set; }
}
ü幸運烏爾使用WPF ...我有使用Silverlight類似的問題,因爲他們不支持的ItemSource轉換器用於tabcontrol。 – 2009-11-01 18:38:02
請參閱Christof的答案(http://stackoverflow.com/questions/589802/how-can-i-bind-a-list-collection-to-tabcontrol-headers-in-wpf/3196668#3196668)爲XAML製作這項工作 - 因爲TabControl.ItemTemplate僅適用於選項卡的標題部分,所以需要內容的TabControl.ContentTemplate塊。 – 2011-01-27 22:14:19