代码之家  ›  专栏  ›  技术社区  ›  JaredPar

对值(FrameworkElement)使用数据绑定

  •  6
  • JaredPar  · 技术社区  · 16 年前

    public interface IData
    {
        string Name { get; }
        FrameworkElement VisualElement { get; }
    }
    

    我想在WPF中使用数据绑定来显示 IData 实例 TabControl Name 值成为选项卡的标题和 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> 
    

    我对WPF还很陌生,所以我可能会错过这里显而易见的东西。

    1 回复  |  直到 12 年前
        1
  •  10
  •   Dave Clemmer manu    12 年前

    ContentPresenter 是为这个做的。内容模板变为:

            <TabControl.ContentTemplate>
                <DataTemplate>
                    <ContentPresenter Content="{Binding VisualElement}" />
                </DataTemplate>
            </TabControl.ContentTemplate>
    

    我用一个 TextBlock TextBox .

    推荐文章