我试图理解呈现顺序是如何工作的,并且随着可视化树的发展,呈现引擎按照顺序呈现事物。
我目前有一个面板,其中包含一个
VisualCollection visuals;并重写getvisual子函数。
protected override Visual GetVisualChild(int index)
{
return visuals[index];
}
protected override int VisualChildrenCount
{
get
{
return visuals.Count;
}
}但是,我想知道如何管理面板相对于可视集合托管的项目的ZIndex。
如果没有可视集合,我可以通过在面板的子控件和ItemsControl的项样式上设置Panel.ZIndex来管理面板的子控件。
据我所知,我可以通过更改可视化集合的顺序来控制可视化集合中项目的呈现顺序。但是,如何同时做到这两点呢?
发布于 2013-12-14 02:49:53
VisualCollection中的位置设置子元素的索引。不能在添加索引后更改它。默认情况下,ZIndex也是根据此顺序设置的。但是,可以将ZIndex设置为另一个值。这不会改变VisualCollection中的索引。他们是相互独立的。
https://stackoverflow.com/questions/20578676
复制相似问题