我有一个XAML布局。
<f:FlipPanel x:Name="flipper" Height="90" Width="90">
<f:FlipPanel.Front>
<Canvas x:Name="Empty_Frame" Visibility="Visible">
<Path Stroke="#FFBCC2AB" StrokeThickness="2">
<Path.Data>
<GeometryGroup FillRule="EvenOdd">
... <!-- There are a lot of geometric elements -->
</Canvas>
</f:FlipPanel.Front>
<f:FlipPanel.Back>
... <!-- There are a lot of geometric elements -->
</f:FlipPanel.Back>
</f:FlipPanel>
FlipPanel是一个来自第三方库的复杂组件。在执行过程中,我需要替换 <Canvas>
与另一组元素。"搜索-删除 "代码无法使用。
var ecanvas = flipper.Children.OfType<Canvas>().FirstOrDefault(x => x.Name == "Empty_Frame");
flipper.Children.Remove(ecanvas);
原因就在于隐藏的中间元素 <Viewport3D>
,位于面板上。
问题:如何让这个隐藏元素的链接与它一起工作(添加和删除元素)?我怎样才能让这个隐藏元素的链接与它一起工作(添加和删除元素)?
我不知道怎么做 FlipPanel 工作,但实际上你并没有将Canvas添加到它的Children集合中,而是将它放在了 FlipPanel的'Front'属性。如果你想删除画布,可以尝试以下方法。
flipper.Front = null;
为了在那里放一个新元素,
flipper.Front = myNewElement;