当前位置: 首页>>代码示例>>C#>>正文


C# DockPanel.InvalidateMeasure方法代码示例

本文整理汇总了C#中System.Windows.Controls.DockPanel.InvalidateMeasure方法的典型用法代码示例。如果您正苦于以下问题:C# DockPanel.InvalidateMeasure方法的具体用法?C# DockPanel.InvalidateMeasure怎么用?C# DockPanel.InvalidateMeasure使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在System.Windows.Controls.DockPanel的用法示例。


在下文中一共展示了DockPanel.InvalidateMeasure方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: DockPanelLayoutTest

        public void DockPanelLayoutTest()
        {
            DockPanel panel = new DockPanel();
            panel.InvalidateMeasure();

            FrameworkElement child1 = new FrameworkElement { Width = 100 };
            FrameworkElement child2 = new FrameworkElement { Height = 100 };
            FrameworkElement child3 = new FrameworkElement { Width = 100 };
            FrameworkElement child4 = new FrameworkElement { Height = 100 };
            FrameworkElement child5 = new FrameworkElement();

            panel.Children.Add(child1);
            panel.Children.Add(child2);
            panel.Children.Add(child3);
            panel.Children.Add(child4);
            panel.Children.Add(child5);

            DockPanel.SetDock(child1, Dock.Left);
            DockPanel.SetDock(child2, Dock.Top);
            DockPanel.SetDock(child3, Dock.Right);
            DockPanel.SetDock(child4, Dock.Bottom);

            panel.Measure(new Size(1000, 1000));

            Assert.AreEqual(new Size(200, 200), panel.DesiredSize);

            panel.Arrange(new Rect(1000, 1000));

            Assert.AreEqual(new Size(1000, 1000), panel.VisualSize);

            Assert.AreEqual(new Size(100, 1000), child1.VisualSize);
            Assert.AreEqual(new Size(900, 100), child2.VisualSize);
            Assert.AreEqual(new Size(100, 900), child3.VisualSize);
            Assert.AreEqual(new Size(800, 100), child4.VisualSize);
            Assert.AreEqual(new Size(800, 800), child5.VisualSize);

            Assert.AreEqual(new Point(0, 0), child1.VisualOffset);
            Assert.AreEqual(new Point(100, 0), child2.VisualOffset);
            Assert.AreEqual(new Point(900, 100), child3.VisualOffset);
            Assert.AreEqual(new Point(100, 900), child4.VisualOffset);
            Assert.AreEqual(new Point(100, 100), child5.VisualOffset);
        }
开发者ID:highzion,项目名称:Granular,代码行数:42,代码来源:DockPanelTest.cs


注:本文中的System.Windows.Controls.DockPanel.InvalidateMeasure方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。