为什么必须将弹出窗口移出控件之外才能进行数据绑定?

问题描述

| 我有这个XAML:
<ContentControl Micro:View.Model=\"{Binding ChildViewModel}\">
    <Popup x:Name=\"TestPopup\" Placement=\"Mouse\" AllowsTransparency=\"True\">
        <Border x:Name=\"border\" Background=\"White\" Padding=\"5\" CornerRadius=\"10\" BorderThickness=\"2\" BorderBrush=\"Black\" >
            <StackPanel Orientation=\"Vertical\">
                <TextBlock x:Name=\"MainInfos\" Text=\"{Binding MainInfos}\" />
                <TextBlock x:Name=\"AltInfos\" Text=\"{Binding AltInfos}\" />
                <TextBlock x:Name=\"OtherInfos\" Text=\"{Binding OtherInfos}\" />
                <TextBlock x:Name=\"CanNotUseFieldInfos\" Foreground=\"Red\" Text=\"{Binding CanNotUseFieldInfos}\" />
            </StackPanel>
        </Border>
    </Popup>
</ContentControl>
当我更新数据上下文的属性的值时,文本块不会更新。 如果我将Popup移到ContentControl之外,例如:
<Popup x:Name=\"TestPopup\" Placement=\"Mouse\" AllowsTransparency=\"True\">
    <Border x:Name=\"border\" Background=\"White\" Padding=\"5\" CornerRadius=\"10\" BorderThickness=\"2\" BorderBrush=\"Black\" >
        <StackPanel Orientation=\"Vertical\">
            <TextBlock x:Name=\"MainInfos\" Text=\"{Binding MainInfos}\" />
            <TextBlock x:Name=\"AltInfos\" Text=\"{Binding AltInfos}\" />
            <TextBlock x:Name=\"OtherInfos\" Text=\"{Binding OtherInfos}\" />
            <TextBlock x:Name=\"CanNotUseFieldInfos\" Foreground=\"Red\" Text=\"{Binding CanNotUseFieldInfos}\" />
        </StackPanel>
    </Border>
</Popup>

<ContentControl Micro:View.Model=\"{Binding ChildViewModel}\"  PreviewMouseMove=\"Canvas_PreviewMouseMove\" MouseEnter=\"myCanvas_MouseEnter\" MouseLeave=\"myCanvas_MouseLeave\" d:LayoutOverrides=\"Width,Margin\" />
有用。 有人可以解释一下为什么吗?是否可以使第一个XAML工作? 提前致谢     

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)