Esempio n. 1
0
        public void ImageStretchUniformTest()
        {
            Image image = CreateImage();
            TestImageRenderElement imageRenderElement = GetImageRenderElement(image);

            image.Stretch          = System.Windows.Media.Stretch.Uniform;
            image.StretchDirection = StretchDirection.Both;

            image.Measure(Size.Infinity);
            Assert.AreEqual(Size.Zero, image.DesiredSize);

            image.Arrange(new Rect(100, 200));
            Assert.AreEqual(new Rect(0, 75, 100, 50), imageRenderElement.Bounds);

            image.Arrange(new Rect(400, 800));
            Assert.AreEqual(new Rect(0, 300, 400, 200), imageRenderElement.Bounds);

            image.StretchDirection = StretchDirection.DownOnly;

            image.Arrange(new Rect(100, 200));
            Assert.AreEqual(new Rect(0, 75, 100, 50), imageRenderElement.Bounds);

            image.Arrange(new Rect(400, 800));
            Assert.AreEqual(new Rect(100, 350, 200, 100), imageRenderElement.Bounds);

            image.StretchDirection = StretchDirection.UpOnly;

            image.Arrange(new Rect(100, 200));
            Assert.AreEqual(new Rect(-50, 50, 200, 100), imageRenderElement.Bounds);

            image.Arrange(new Rect(400, 800));
            Assert.AreEqual(new Rect(0, 300, 400, 200), imageRenderElement.Bounds);
        }
Esempio n. 2
0
        public void ImageStretchNoneTest()
        {
            Image image = CreateImage();
            TestImageRenderElement imageRenderElement = GetImageRenderElement(image);

            image.Stretch = System.Windows.Media.Stretch.None;

            image.Measure(Size.Infinity);
            Assert.AreEqual(new Size(200, 100), image.DesiredSize);

            image.Arrange(new Rect(200, 100));
            Assert.AreEqual(new Rect(200, 100), imageRenderElement.Bounds);

            image.Arrange(new Rect(400, 200));
            Assert.AreEqual(new Rect(100, 50, 200, 100), imageRenderElement.Bounds);
        }