Jar*_*Par 7 data-binding wpf binding frameworkelement
我的一个数据源生成一组值,这些值键入以下接口
public interface IData
{
string Name { get; }
FrameworkElement VisualElement { get; }
}
Run Code Online (Sandbox Code Playgroud)
我想在WPF中使用数据绑定来显示IData
实例的集合,TabControl
其中Name
值成为选项卡的标题,VisualElement
值显示为相应选项卡的内容.
绑定标题是直截了当的.我对如何定义一个允许我显示VisualElement
值的模板感到困惑.我尝试了很多解决方案但收效甚微.我最好的尝试如下.
<TabControl ItemsSource="{Binding}">
<TabControl.ItemTemplate>
<DataTemplate>
<Label Content="{Binding Name}"/>
</DataTemplate>
</TabControl.ItemTemplate>
<TabControl.ContentTemplate>
<DataTemplate>
How do I display VisualElement here?
</DataTemplate>
</TabControl.ContentTemplate>
</TabControl>
Run Code Online (Sandbox Code Playgroud)
我仍然是WPF的新手,所以我可能会错过这里显而易见的.
Tim*_*res 10
ContentPresenter
是为此而做的.内容模板变为:
<TabControl.ContentTemplate>
<DataTemplate>
<ContentPresenter Content="{Binding VisualElement}" />
</DataTemplate>
</TabControl.ContentTemplate>
Run Code Online (Sandbox Code Playgroud)
我用a TextBlock
和a 测试了它TextBox
.