gpt4 book ai didi

c# - 为什么我的数据绑定(bind) TabControl 看起来不像我的非数据绑定(bind) TabControl?

转载 作者:行者123 更新时间:2023-12-02 11:04:08 25 4
gpt4 key购买 nike

我的非数据绑定(bind) TabControl 看起来不错:

alt text http://tanguay.info/web/external/tabControlPlain.png

<TabControl Width="225" Height="150">
<TabItem Header="One">
<TextBlock Margin="10" Text="This is the text block"/>
</TabItem>
<TabItem Header="Two"/>
<TabItem Header="Three"/>
<TabItem Header="Four"/>
</TabControl>

但是我的数据绑定(bind) TabControl 看起来像这样:

alt text http://tanguay.info/web/external/tabBound.png

<Window.Resources>
<DataTemplate x:Key="TheTabControl">
<TabItem Header="{Binding Title}">
<TextBlock Text="{Binding Description}" Margin="10"/>
</TabItem>
</DataTemplate>
</Window.Resources>

<TabControl Width="225" Height="150" ItemsSource="{Binding AreaNames}"
ItemTemplate="{StaticResource TheTabControl}">
</TabControl>

public MainViewModel()
{
AreaNames.Add(new Area { Title = "Area1", Description = "this is the description for area 1" });
AreaNames.Add(new Area { Title = "Area2", Description = "this is the description for area 2" });
AreaNames.Add(new Area { Title = "Area3", Description = "this is the description for area 3" });
}

#region ViewModelProperty: AreaNames
private ObservableCollection<Area> _areaNames = new ObservableCollection<Area>();
public ObservableCollection<Area> AreaNames
{
get
{
return _areaNames;
}

set
{
_areaNames = value;
OnPropertyChanged("AreaNames");
}
}
#endregion

我必须更改什么才能使我的数据绑定(bind)选项卡控件看起来像常规的非数据绑定(bind)选项卡控件?

最佳答案

TabControl 使用两个不同的模板来定义其结构。 ItemTemplate 用于标题(“选项卡”),ContentTemplate 用于每个选项卡下显示的内容。

此 XAML 看起来更像您的第一个屏幕截图:

<Window.Resources>
<DataTemplate x:Key="TabHeaderTemplate">
<TextBlock Text="{Binding Title}"/>
</DataTemplate>

<DataTemplate x:Key="TabItemTemplate">
<TextBlock Text="{Binding Description}" Margin="10"/>
</DataTemplate>
</Window.Resources>

<TabControl Width="225" Height="150"
ItemsSource="{Binding AreaNames}"
ContentTemplate="{StaticResource TabItemTemplate}"
ItemTemplate="{StaticResource TabHeaderTemplate}" />

关于c# - 为什么我的数据绑定(bind) TabControl 看起来不像我的非数据绑定(bind) TabControl?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/984472/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com