绑定到数据模板控件属性

时间:2009-07-06 16:26:02

标签: wpf data-binding

是否可以完全在XAML中将某些内容绑定到数据模板中控件的属性?以下代码是我遇到的问题的简化版本。我希望在用户在DataTemplate中的TextBox中键入时更新TextBlock(displayName)的文本。

<Window x:Class="WpfApplication4.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:WpfApplication4="clr-namespace:WpfApplication4"
Title="Window1" Height="300" Width="300">
<Window.Resources>
    <DataTemplate DataType="{x:Type WpfApplication4:Foo}">
        <TextBox Text="{Binding Path=Name}" />
    </DataTemplate>
    <WpfApplication4:Foo x:Key="testObject" Name="This is a test" />
</Window.Resources>
<StackPanel>
    <TextBlock x:Name="displayName" Margin="5" />
    <ContentControl x:Name="contentControl" Margin="5" Content="{StaticResource testObject}" />
</StackPanel>

1 个答案:

答案 0 :(得分:1)

不,至少,不是来自XAML。您可以编写代码来遍历可视化树并找到要绑定的元素,但这样做会很糟糕。

但是在您的特定示例中,将TextBlock绑定到同一数据对象(Foo实例)是否没有意义?