C# 修复进程隔离(通过FrameworkElementAdapter)WPF控件的顺序/剪裁
我有一个wpf应用程序,它托管一组控件,这些控件由另一个进程通过FrameworkElementAdapter支持。由于某些原因,这些控件存在剪裁/Z顺序问题,而非远程控件似乎不会出现这种问题。C# 修复进程隔离(通过FrameworkElementAdapter)WPF控件的顺序/剪裁,c#,wpf,maf,C#,Wpf,Maf,我有一个wpf应用程序,它托管一组控件,这些控件由另一个进程通过FrameworkElementAdapter支持。由于某些原因,这些控件存在剪裁/Z顺序问题,而非远程控件似乎不会出现这种问题。 上图中的gridview是托管控件之一,与右侧的面板不正确地重叠,而托管它的contentcontrol的行为与预期一致。我已经在gridview上显式设置了cliptobunds=true 我的问题是: 有没有办法让我的控件正确地剪裁并遵守z顺序,或者FrameworkElementAdapter通
上图中的gridview是托管控件之一,与右侧的面板不正确地重叠,而托管它的contentcontrol的行为与预期一致。我已经在gridview上显式设置了
cliptobunds=true
我的问题是:
有没有办法让我的控件正确地剪裁并遵守z顺序,或者FrameworkElementAdapter通过(例如)将它们渲染到装饰器层或其他方式来实现这一点
Xaml:
有趣的旁注:如果我使用Snoop检查我的应用程序,当您将鼠标悬停在可视化树形图的部分上时,在预览Snoop显示中,远程控件根本不会出现,它们各自的主机ContentControl显示为空,但大小正确
<Grid>
<Viewbox>
<ContentControl Content="{Binding VM.ErrorView}" Height="240" Width="425" Loaded="ContentControl_Loaded"/>
</Viewbox>
</Grid>
public partial class ValidationView : UserControl
{
public ValidationView()
{
InitializeComponent();
}
private void ContentControl_Loaded(object sender, RoutedEventArgs e)
{
var cc = (sender as ContentControl);
var content = cc.Content as FrameworkElement;
content.ClipToBounds = true;
}
}