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


C# Ellipse.TransformToVisual方法代码示例

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


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

示例1: TestHeaderAlignmentOfExpander

 public void TestHeaderAlignmentOfExpander()
 {
     Expander exp = DefaultExpanderToTest;
     exp.Width = 400;
     exp.Height = 300;
     exp.HorizontalContentAlignment = HorizontalAlignment.Center;
     exp.Padding = new Thickness(0.0);
     Ellipse elps = new Ellipse();
     Point pt = new Point();
     TestAsync(
         exp,
         () => elps = (Ellipse)TestExtensions.GetChildrenByType(exp, typeof(Ellipse)),
         () => pt = elps.TransformToVisual(exp).Transform(new Point(0, 0)),
         () => Assert.IsTrue(pt.X < 5), //// Make sure the ellipse of header/toggle button is at the top left corner of expander. 
         () => Assert.IsTrue(pt.Y < 5)); //// The pixel difference is less than 5.
 }
开发者ID:modulexcite,项目名称:SilverlightToolkit,代码行数:16,代码来源:ExpanderTest.Regressions.cs

示例2: TestAlignmentOfToggleButtonToExpanderHeader

 public void TestAlignmentOfToggleButtonToExpanderHeader()
 {
     Expander exp = DefaultExpanderToTest;
     exp.Width = 200;
     exp.Header = "Header of Expander";
     exp.ExpandDirection = ExpandDirection.Left;
     exp.Padding = new Thickness(0.0);
     ToggleButton tgbn = new ToggleButton();
     Ellipse elps = new Ellipse();
     Point pt = new Point();
     TestAsync(
         exp,
         () => tgbn = (ToggleButton)TestExtensions.GetChildrenByType(exp, typeof(ToggleButton)),
         () => elps = (Ellipse)TestExtensions.GetChildrenByType(exp, typeof(Ellipse)),
         () => pt = elps.TransformToVisual(tgbn).Transform(new Point(0, 0)),
         () => Assert.IsTrue(TestExtensions.AreClose(tgbn.ActualWidth / 2, pt.X - elps.ActualWidth / 2)));
 }
开发者ID:royosherove,项目名称:cthru,代码行数:17,代码来源:ExpanderTest.Regressions.cs

示例3: IsPointInsideEllipseShape

        private bool IsPointInsideEllipseShape(Ellipse ellipseToUse, Point point)
        {
            EllipseGeometry ellipse  = new EllipseGeometry();
            ellipse.RadiusX = ellipseToUse.RenderSize.Width / 2;
            ellipse.RadiusY = ellipseToUse.RenderSize.Height / 2;

            // Get absolute position of the ellipse inside parent control
            //Point absolutePosition = ellipse.Transform.Transform(new Point(0, 0));
            var transform = ellipseToUse.TransformToVisual(this);
            Point absolutePosition = transform.Transform(new Point(0, 0));

            ellipse.Center = new Point(absolutePosition.X + ellipse.RadiusX,
                                        absolutePosition.Y + ellipse.RadiusY);

            if (ellipse.Bounds.Contains(point))
            {
                double xPositionInsideBounds = point.X - absolutePosition.X;
                double yPositionInsideBounds = point.Y - absolutePosition.Y;

                if (PointInsideEllipse(xPositionInsideBounds, ellipse.RadiusX, yPositionInsideBounds, ellipse.RadiusY))
                {
                    return true;
                }
            }

            return false;
        }
开发者ID:anhdn611,项目名称:Windows-Phone-Radial-Slider,代码行数:27,代码来源:RadialSliderModern.xaml.cs


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