2009-08-20 46 views
0

我有一个窗口从另一个作为DataContext传递的类中获取其数据。但我现在也想在窗口内进行数据绑定。该窗口如下所示:从DataContext中退出

<Window x:Class="WpfApplication1.Window1" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="Window1" 
    Height="300" 
    Width="300"> 
    <StackPanel> 
     <TextBlock Text="{Binding UserName}" /> 
     <TextBlock x:Name="TestTextBlock" 
        Text="Hello World" /> 
     <TextBlock x:Name="TestTextBlock2" 
        Text="{Binding ElementName=TestTextBlock,Path=Text}" /> 
    </StackPanel> 
</Window> 

文本块之间的结合TestTextBlock和TestTextBlock2工作正常,但直到我改变窗口的DataContext的属性。如何在这两个文本块之间进行绑定,以便更改DataContext不会中断数据绑定?

由于提前, 斯特凡

+0

我没有遇到任何问题。当你更改'Window'的'DataContext'时究竟发生了什么?你是否以编程方式改变了'TestTextBlock.Text'? – 2009-08-20 13:28:08

+0

另一个问题:你正在改变'DataContext'通过分配一个全新的对象,是的? – 2009-08-20 13:43:06

回答

0

尝试Binding.Mode设置为一次性明确。 这样,TestTextBlock2.Text将只设置一次(如果这是你想要的)。