示例#1
0
        private void markTreeDirtyHelper(Visual v)
        {
            //now walk down and mark all UIElements dirty
            if (v != null)
            {
                if (v.CheckFlagsAnd(VisualFlags.IsUIElement))
                {
                    UIElement uie = ((UIElement)v);
                    uie.InvalidateMeasureInternal();
                    uie.InvalidateArrangeInternal();
                }

                //walk children doing the same, don't stop if they are already dirty since there can
                //be insulated dirty islands below
                int cnt = v.InternalVisualChildrenCount;

                for (int i = 0; i < cnt; i++)
                {
                    Visual child = v.InternalGetVisualChild(i);
                    if (child != null)
                    {
                        markTreeDirtyHelper(child);
                    }
                }
            }
        }
示例#2
0
 internal override void invalidate(UIElement e)
 {
     e.InvalidateArrangeInternal();
 }
示例#3
0
 internal override void invalidate(UIElement e)
 {
     e.InvalidateArrangeInternal();
 }