public void TestDataGridInViewBox()
 {
     Viewbox vb = new Viewbox();
     vb.Height = 300;
     vb.Width = 300;
     vb.Stretch = Stretch.UniformToFill;
     DataGrid dg = new DataGrid();
     dg.ItemsSource = DataForDataGrid.GenerateRecordList(30);
     dg.VerticalScrollBarVisibility = ScrollBarVisibility.Visible;
     vb.Child = dg;
     ContentPresenter cp = new ContentPresenter();
     ScaleTransform st = new ScaleTransform();
     TestAsync(
        vb,
        () => cp = (ContentPresenter)VisualTreeHelper.GetParent(dg),
        () => st = cp.RenderTransform as ScaleTransform,
        () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualHeight, dg.ActualHeight * st.ScaleY)),
        () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualWidth, dg.ActualWidth * st.ScaleX)));
 }
Example #2
0
        public void Viewbox_Stretch_Uniform_Child_With_Unrestricted_Width()
        {
            using var app = UnitTestApplication.Start(TestServices.MockPlatformRenderInterface);

            var target = new Viewbox()
            {
                Child = new Rectangle()
                {
                    Width = 100, Height = 50
                }
            };

            target.Measure(new Size(double.PositiveInfinity, 200));
            target.Arrange(new Rect(new Point(0, 0), target.DesiredSize));

            Assert.Equal(new Size(400, 200), target.DesiredSize);

            Assert.True(TryGetScale(target, out Vector scale));
            Assert.Equal(4.0, scale.X);
            Assert.Equal(4.0, scale.Y);
        }
        /// <summary>
        /// Matrix Control
        /// </summary>
        public Matrix()
        {
            ContentPanel = new StackPanel()
            {
                Spacing     = 0,
                Orientation = Orientation.Horizontal
            };
            Viewbox viewbox = new Viewbox()
            {
                Child = ContentPanel
            };

            this.Children.Add(viewbox);
            SetValue();
            _timer = new DispatcherTimer()
            {
                Interval = TimeSpan.FromMilliseconds(250)
            };
            _timer.Tick += (object sender, object e) => SetValue();
            _timer.Start();
        }
Example #4
0
        public static double GetChildScaleY(this Viewbox viewbox)
        {
            if (viewbox.Child == null)
            {
                throw new InvalidOperationException("Can't tell effective scale of a Viewbox child for a Viewbox with no child.");
            }

            var fe = viewbox.Child as FrameworkElement;

            if (fe == null)
            {
                throw new InvalidOperationException("Can't tell effective scale of a Viewbox child for a Viewbox with a child that is not a FrameworkElement.");
            }

            if (fe.ActualWidth == 0)
            {
                throw new InvalidOperationException("Can't tell effective scale of a Viewbox child for a Viewbox with a child that is not laid out.");
            }

            return(fe.ActualHeight / viewbox.ActualHeight);
        }
            public SelectionButton(Input input)
            {
                Input = input;

                if (input.DefaultInput != null)
                {
                    var defaultSelection = input.Children.FirstOrDefault(i => i.Id == input.DefaultInput);
                    SelectItem(defaultSelection);
                }

                Title = input.Title;

                Icon = new Viewbox()
                {
                    Child  = new SymbolIcon(Symbol.Edit),
                    Height = 15,
                    Width  = 15
                };

                Action = ShowPopup;
            }
Example #6
0
        private void lst_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            if (lst.SelectedItem != null)
            {
                var grd    = new Viewbox();
                var bitmap = new BitmapImage(new Uri((lst.SelectedItem as Image).Path));
                var img    = new Canvas
                {
                    Background = new ImageBrush
                    {
                        ImageSource = bitmap,
                        Stretch     = Stretch.None
                    }
                };
                img.Width  = bitmap.Width;
                img.Height = bitmap.Height;

                ImageHandler.AddImageToCanvas(ref img);
            }
            Close();
        }
        private void AddMachineNames()
        {
            for (int machine = 0; machine < Machines.Count; machine++)
            {
                Viewbox box = new Viewbox();

                string    text  = "P" + (machine + 1).ToString();
                TextBlock label = new TextBlock();
                label.Text = text;
                box.Height = _rectangleHeight;
                box.Width  = _rectangleWidth;
                box.HorizontalAlignment = HorizontalAlignment.Right;
                ///label.FontSize = _rectangleHeight;
                Canvas.SetLeft(box, _startX - box.Width - 2);
                Canvas.SetTop(box, _startY + _rectangleHeight * machine);

                box.Child = label;

                canvas.Children.Add(box);
            }
        }
Example #8
0
        public void populateMemoryCellsGrid(PRAMModel dataRows)
        {
            int rowCount = -1;

            foreach (KeyValuePair <string, List <dynamic> > kvp in dataRows)
            {
                memoryGrid.RowDefinitions.Add(new RowDefinition());
                rowCount++;
                if (memoryGrid.ColumnDefinitions.Count < 1)
                {
                    memoryGrid.ColumnDefinitions.Add(new ColumnDefinition());
                }
                Viewbox   viewBox = new Viewbox();
                TextBlock rowName = new TextBlock();
                rowName.Margin = new Thickness(7);
                rowName.Text   = kvp.Key;
                viewBox.SetValue(Grid.ColumnProperty, 0);
                viewBox.SetValue(Grid.RowProperty, rowCount);
                viewBox.VerticalAlignment   = VerticalAlignment.Center;
                viewBox.HorizontalAlignment = HorizontalAlignment.Center;
                viewBox.Child = rowName;
                memoryGrid.Children.Add(viewBox);
                memoryRows[kvp.Key] = new List <MemoryCellView>();
                while (memoryGrid.ColumnDefinitions.Count < kvp.Value.Count + 1)
                {
                    memoryGrid.ColumnDefinitions.Add(new ColumnDefinition());
                }

                for (int i = 0; i < kvp.Value.Count; i++)
                {
                    MemoryCellView memoryCellView = new MemoryCellView();
                    memoryCellView.Data = kvp.Value[i];
                    memoryCellView.SetValue(Grid.ColumnProperty, i + 1);
                    memoryCellView.SetValue(Grid.RowProperty, rowCount);
                    memoryGrid.Children.Add(memoryCellView);

                    memoryRows[kvp.Key].Add(memoryCellView);
                }
            }
        }
        public void DrawEdge(Viewbox ViewBox1, Viewbox ViewBox2, KeyEventHandler TextboxHandler,
                             MouseButtonEventHandler MouseEvent)
        {
            if (Graph.FindEdge(Graph.FindVertex(
                                   ExtractElementFromViewBox <TextBlock>(ViewBox1).Text),
                               Graph.FindVertex(ExtractElementFromViewBox <TextBlock>(ViewBox2).Text)) != null)
            {
                CancelSelection(GetFrameworkElementCollection <Button>().FirstOrDefault(b => b.Name == "FindPathButton"));
                return;
            }
            Point point1 = GetControlPositionOnCanvas(ViewBox1);
            Point point2 = GetControlPositionOnCanvas(ViewBox2);
            Line  line   = new Line
            {
                Stroke          = Brushes.Black,
                StrokeThickness = 2,
                RenderTransform = new TranslateTransform(ViewBox1.ActualWidth / 2, ViewBox1.ActualHeight / 2)
            };

            SetLineBinding(ViewBox1, ViewBox2, line);
            double  MarginLeft   = (point1.X + point2.X) / 2;
            double  MarginTop    = (point1.Y + point2.Y) / 2;
            double  MarginRight  = point2.X > point1.X ? point2.X - MarginLeft - 12 : point1.X - MarginLeft - 12;
            double  MarginBottom = point2.Y > point1.Y ? point2.Y - MarginTop - 18 : point1.Y - MarginTop - 18;
            TextBox textBox      = UICreator.CreateTextBox(new Thickness(MarginLeft, MarginTop, MarginRight, MarginBottom));

            textBox.KeyUp += TextboxHandler;
            Grid    grid    = new Grid();
            Viewbox viewbox = UICreator.CreateViewBox($"edge " +
                                                      $"{ExtractElementFromViewBox<TextBlock>(ViewBox1).Text} " +
                                                      $"{ExtractElementFromViewBox<TextBlock>(ViewBox2).Text}");

            viewbox.MouseLeftButtonUp += MouseEvent;
            grid.Children.Add(line);
            grid.Children.Add(textBox);
            viewbox.Child = grid;
            Canvas.Children.Add(viewbox);
            textBox.SelectionStart = textBox.Text.Length;
            textBox.Focus();
        }
Example #10
0
        private void CreateSelectTopicButtons()
        {
            IEnumerable <GameItem> talkInMinuteItems = EnglishGameHelper.RandomOrder(
                FileManagement.GetListGameData().Where(x => x.GameName == Constant.GameConstant.TalkInMinute).ToList());
            int index = 1;

            foreach (GameItem talkInMinuteItem in talkInMinuteItems)
            {
                var viewbox = new Viewbox {
                    Child = new TextBlock {
                        Text = index.ToString(CultureInfo.InvariantCulture)
                    }
                };

                var button = new Button
                {
                    Content = viewbox,
                    Tag     = talkInMinuteItem,
                    Width   = 100,
                    Height  = 100,
                    Margin  = new Thickness(0, 0, 10, 10)
                };

                button.Click += (s, e) =>
                {
                    var b = s as Button;
                    if (b != null)
                    {
                        SelectTopicVisibility = Visibility.Collapsed;
                        SelectedGameItem      = (GameItem)b.Tag;
                        b.Visibility          = Visibility.Collapsed;
                        EnglishGameHelper.SpeakText(SelectedGameItem.Title);
                        _timer.IsEnabled = true;
                    }
                };

                LayoutRoot.Children.Add(button);
                index++;
            }
        }
        private void ButtonMostrar_Click(object sender, RoutedEventArgs e)
        {
            int numeroFilas = 0;

            if (RadioButtonBaja.IsChecked == true)
            {
                numeroFilas = 3;
            }
            else if (RadioButtonMedia.IsChecked == true)
            {
                numeroFilas = 4;
            }
            else if (RadioButtonAlta.IsChecked == true)
            {
                numeroFilas = 5;
            }

            for (int fila = 0, contadorLista = 0; fila < numeroFilas; fila++)
            {
                for (int z = 0; z < 4; contadorLista++, z++)
                {
                    Border    borde = new Border();
                    Viewbox   vb    = new Viewbox();
                    TextBlock tb    = new TextBlock();
                    vb.Child           = tb;
                    borde.Child        = vb;
                    borde.Background   = Brushes.NavajoWhite;
                    borde.Margin       = new Thickness(3);
                    borde.CornerRadius = new CornerRadius(10);
                    tb.FontFamily      = new FontFamily("Webdings");
                    tb.Tag             = listaExterna[contadorLista];
                    tb.Text            = tb.Tag.ToString();
                    GridTabla.Children.Add(borde);
                    Grid.SetRow(borde, fila);
                    Grid.SetColumn(borde, z);
                }
            }
            BarraProgreso.Value = 600;
            MessageBox.Show("¡Partida finalizada!");
        }
        private void Borde_MouseLeftButtonUp1(object sender, MouseButtonEventArgs e)
        {
            Border    b  = (Border)sender;
            Viewbox   vb = (Viewbox)b.Child;
            TextBlock tb = (TextBlock)vb.Child;

            if (primerCaracter == null)
            {
                primerCaracter = tb.Tag.ToString();
            }
            else if (segundoCaracter == null)
            {
                segundoCaracter = tb.Tag.ToString();
            }

            if (textBlockExterno == null)
            {
                textBlockExterno = tb;
            }

            if (primerCaracter != null && segundoCaracter != null)
            {
                if (segundoCaracter != primerCaracter)
                {
                    System.Threading.Thread.Sleep(500);
                    tb.Text = "s";
                    textBlockExterno.Text = "s";
                    primerCaracter        = null;
                    segundoCaracter       = null;
                    textBlockExterno      = null;
                }
                else
                {
                    ControladorBarraProgreso();
                    primerCaracter   = null;
                    segundoCaracter  = null;
                    textBlockExterno = null;
                }
            }
        }
Example #13
0
        private Viewbox GetImageSource()
        {
            var viewbox = new Viewbox();

            viewbox.Stretch = Stretch.Uniform;

            Canvas canvas = null;

            var pathName = PathName;

            if (!string.IsNullOrWhiteSpace(pathName))
            {
                canvas = System.Windows.Application.Current.FindResource(pathName) as Canvas;
                if (canvas != null)
                {
                    // Clone to prevent the same instance to be used multiple times
                    canvas = canvas.Clone();

                    if (canvas != null && Foreground != Brushes.Transparent)
                    {
                        foreach (var child in canvas.Children)
                        {
                            var path = child as Path;
                            if (path != null)
                            {
                                path.SetCurrentValue(Shape.FillProperty, Foreground);
                            }
                        }
                    }
                }
                else
                {
                    Log.Warning("Could not find a resource named '{0}'", pathName);
                }
            }

            viewbox.Child = canvas;

            return(viewbox);
        }
Example #14
0
        private void DrawSeat()
        {
            seatComboBox.Items.Add(new CustomComboBoxItem {
                Text = "Not Selected", Value = ""
            });
            foreach (Seat seat in SeatMapPostion)
            {
                Grid grid = new Grid();
                grid.Width      = seat.Width;
                grid.Height     = seat.Height;
                grid.Background = seatBrush;
                grid.Visibility = Visibility.Hidden;
                TextBlock text = new TextBlock();
                text.Text       = string.Format("{0}{1}", seat.Row, seat.Column);
                text.Foreground = Brightness(seatBrush.Color) < 130 ? Brushes.White : Brushes.Black;
                if (FrontDoorUsingFlag && !RearDoorUsingFlag || FrontDoorUsingFlag && RearDoorUsingFlag && seat.Row < AircraftConfiguration.MiddleRow)
                {
                    text.LayoutTransform = new RotateTransform(180);
                }
                Viewbox viewBox = new Viewbox();
                viewBox.Child = text;
                grid.Name     = string.Format("{1}_{0}", seat.Row, seat.Column);
                RegisterName(string.Format("{1}_{0}", seat.Row, seat.Column), grid);
                grid.Children.Add(viewBox);
                imageCanvas.Children.Add(grid);
                Canvas.SetLeft(grid, seat.X);
                Canvas.SetTop(grid, seat.Y);

                seatComboBox.Items.Add(new CustomComboBoxItem {
                    Text = string.Format("{0}{1}", seat.Row, seat.Column), Value = string.Format("{1}_{0}", seat.Row, seat.Column)
                });
            }
            seatComboBox.SelectedIndex = 0;

            if (selectedSeat != null)
            {
                ShowSeat(selectedSeat);
                DrawLine(selectedSeat);
            }
        }
        public void SetQuestion(QuestionsModel question)
        {
            ClearGrid();
            AddRow(grid_QuestData, 1);
            Viewbox box = DynamicElements.CreateViewBoxLabel("Введите вопрос:", 0);

            grid_QuestData.Children.Add(box);
            AddRow(grid_QuestData, 2);
            RichTextBox rich = new RichTextBox();

            rich.Name     = "rtb_Question";
            rich.FontSize = 20;
            rich.Tag      = question.Id;
            rich.AppendText(question.Text);
            DynamicElements.SetRowColumnProperties(rich, 1, 0, 1, 2);
            grid_QuestData.Children.Add(rich);
            AddRow(grid_QuestData, 4);
            ScrollViewer scroll = new ScrollViewer();
            StackPanel   panel  = new StackPanel();
            Button       btn    = DynamicElements.CreateButton("Добавить ответ");

            btn.Style = this.FindResource("btn_AddAnswer") as Style;
            panel.Children.Add(btn);
            scroll.Content = panel;
            scroll.VerticalScrollBarVisibility = ScrollBarVisibility.Hidden;
            DynamicElements.SetRowColumnProperties(scroll, 3, 1, 1, 4);
            grid_QuestData.Children.Add(scroll);
            answerCount = 0;
            if (question.Answers.Count == 0)
            {
                AddAnswer(btn, new AnswersModel(answerCount, question.Id, "", false));
            }
            else
            {
                foreach (AnswersModel el in question.Answers)
                {
                    AddAnswer(btn, el);
                }
            }
        }
Example #16
0
        public AnalyzeUC()
        {
            InitializeComponent();
            Root.IsEnabled = false;

            /*  var distance = FallLocationService.getListOfDistance().ToArray();
            *  DistanceDiagramSlider.SelectionStart = distance[0];
            *  DistanceDiagramSlider.SelectionEnd = distance[distance.Length - 1];*/

            //   var i = carusel.Children.Count;



            instance = SimpleIoc.Default.GetInstance <AnalyzeViewModle>();
            DispatcherHelper.CheckBeginInvokeOnUI(() =>
            {
                if (instance != null)
                {
                    foreach (var item in instance.getImageList())
                    {
                        Viewbox vb;
                        if (item.Parent == null)
                        {
                            vb       = new Viewbox();
                            vb.Child = item;
                        }
                        else
                        {
                            vb = (item.Parent as Viewbox);
                        }
                        AFLCarusel.Items.Add(new CarouselItem()
                        {
                            Content = vb
                        });
                        // AFLCarusel.Items.Add(item);
                    }
                }
            });
            Root.IsEnabled = true;
        }
        public void TestDataGridInViewBox()
        {
            Viewbox vb = new Viewbox();

            vb.Height  = 300;
            vb.Width   = 300;
            vb.Stretch = Stretch.UniformToFill;
            DataGrid dg = new DataGrid();

            dg.ItemsSource = DataForDataGrid.GenerateRecordList(30);
            dg.VerticalScrollBarVisibility = ScrollBarVisibility.Visible;
            vb.Child = dg;
            ContentPresenter cp = new ContentPresenter();
            ScaleTransform   st = new ScaleTransform();

            TestAsync(
                vb,
                () => cp = (ContentPresenter)VisualTreeHelper.GetParent(dg),
                () => st = cp.RenderTransform as ScaleTransform,
                () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualHeight, dg.ActualHeight * st.ScaleY)),
                () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualWidth, dg.ActualWidth * st.ScaleX)));
        }
Example #18
0
        // A common way to implement an adorner's rendering behavior is to override the OnRender
        // method, which is called by the layout system as part of a rendering pass.
        protected override void OnRender(DrawingContext drawingContext)
        {
            Rect adornedElementRect = new Rect(this.AdornedElement.DesiredSize);

            // Some arbitrary drawing implements.
            SolidColorBrush renderBrush = new SolidColorBrush(Colors.White);
            //renderBrush.Opacity = 0.2;
            double renderRadius = 5.0;

            // Draw a circle at each corner.
            Viewbox parentViewbox = VisualTreeExtensions.FindParent <Viewbox>(this.AdornedElement);

            double factor = parentViewbox.Child.RenderSize.Width / parentViewbox.RenderSize.Width;

            renderRadius *= factor;
            Pen renderPen = new Pen(Brushes.Black, 1.5 * factor);

            drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.TopLeft, renderRadius, renderRadius);
            drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.TopRight, renderRadius, renderRadius);
            drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.BottomLeft, renderRadius, renderRadius);
            drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.BottomRight, renderRadius, renderRadius);
        }
Example #19
0
        private void Borde_MouseDown(object sender, MouseButtonEventArgs e)
        {
            Border    borde = sender as Border;
            Viewbox   vb    = (Viewbox)borde.Child;
            TextBlock tb    = (TextBlock)vb.Child;


            if (tb.Text.Equals("s"))
            {
                tb.Text = tb.Tag.ToString();
                if (caracter1 == null)
                {
                    caracter1 = tb.Tag.ToString();
                    carta1    = tb;
                }
                else if (caracter2 == null)
                {
                    caracter2 = tb.Tag.ToString();
                    carta2    = tb;
                }
            }
        }
Example #20
0
        public void Stat_Add_Button_Click(object sender, RoutedEventArgs e)
        {
            string text = _mainPage.GetMainText();

            // get the text block
            TextBlock tb = new TextBlock();

            tb.Text     = text;
            tb.FontSize = 60;

            Viewbox vb = new Viewbox();

            vb.Height = TemplateStatButtonHeight.ActualHeight;
            vb.Child  = tb;

            AddToGrid(vb, text);

            _mainPage.Stat_Add_Button_Click(_currentStatValues.Count.ToString());

            // reset the equals key focus when we change view
            Helpers.equalsKeyFocus(_mainPage.currentView.GetEqualsKey(), this);
        }
Example #21
0
        private void AddTestAnchorAdornment(ITextViewLine line, SnapshotSpan span, TestItemViewModel viewModel, bool isUpToDate)
        {
            if (viewModel == null)
            {
                return;
            }

            var viewBox = new Viewbox()
            {
                Width   = _textView.LineHeight,
                Height  = _textView.LineHeight,
                Stretch = Stretch.Uniform
            };

            var button = new ActionButton()
            {
                DataContext      = viewModel,
                Opacity          = isUpToDate ? 1 : _modifiedOpacity,
                CommandParameter = viewModel.CodeItem,
                Command          = _selectTestCommand,
                Cursor           = Cursors.Hand,
                Tag = new AnchorData()
                {
                    Targets = new TestMethod[] { viewModel.CodeItem as TestMethod },
                    Type    = AnchorType.Test
                }
            };

            button.SetBinding(ActionButton.IconProperty,
                              new Binding(nameof(viewModel.IconPath)));
            button.MouseRightButtonDown += (o, e) => e.Handled = true;
            button.MouseRightButtonUp   += OnTestItemRightButtonUp;
            viewBox.Child = button;

            Canvas.SetLeft(viewBox, _sequenceCoverageLineWidth);
            Canvas.SetTop(viewBox, line.Top);

            _adornmentLayer.AddAdornment(AdornmentPositioningBehavior.TextRelative, span, null, viewBox, null);
        }
Example #22
0
        private void LayoutPageWithoutPlugin()
        {
            MainGrid.Children.Remove(PluginContainer);             //**** THIS LINE ADDED FOR KB ---may be better solution, CR *****
            PluginContainer = new Viewbox();
            MainGrid.Children.Add(PluginContainer);
            SetGridPos(PluginContainer, 1, 0, 1);
            SetGridPos(Agent, 0, 0, 1);
            SetGridPos(Buttons, 0, 2, 2);
            Agent.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch;
            Agent.VerticalAlignment   = System.Windows.VerticalAlignment.Stretch;
            Buttons.VerticalAlignment = System.Windows.VerticalAlignment.Center;

            MainGrid.RowDefinitions[0].ClearValue(RowDefinition.HeightProperty);
            MainGrid.RowDefinitions[1].Height = GridLength.Auto;

            MainGrid.ColumnDefinitions[0].Width = GridLength.Auto;
            MainGrid.ColumnDefinitions[1].ClearValue(ColumnDefinition.WidthProperty);
            MainGrid.ColumnDefinitions[1].ClearValue(ColumnDefinition.MinWidthProperty);
            MainGrid.ColumnDefinitions[1].ClearValue(ColumnDefinition.MaxWidthProperty);

            UpdateLayout();
        }
Example #23
0
        private void MergeTiles(FileInfo targetFile, XkcdTile topLeftTile, XkcdTile topRightTile, XkcdTile bottomLeftTile, XkcdTile bottomRightTile)
        {
            if (topLeftTile != null ||
                topRightTile != null ||
                bottomLeftTile != null ||
                bottomRightTile != null)
            {
                Func <XkcdTile, Image> TileToImage = tile => new Image {
                    Source = XkcdTile.ToImageSource(tile)
                };

                var grid = new UniformGrid {
                    Rows = 2, Columns = 2
                };
                grid.Children.Add(TileToImage(topLeftTile));
                grid.Children.Add(TileToImage(topRightTile));
                grid.Children.Add(TileToImage(bottomLeftTile));
                grid.Children.Add(TileToImage(bottomRightTile));

                var viewBox = new Viewbox();
                viewBox.Child = grid;

                viewBox.Measure(new System.Windows.Size(XkcdTile.Width, XkcdTile.Height));
                viewBox.Arrange(new Rect(new System.Windows.Size(XkcdTile.Width, XkcdTile.Height)));

                var renderTarget = new RenderTargetBitmap(XkcdTile.Width, XkcdTile.Height, 96, 96, PixelFormats.Default);
                renderTarget.Render(viewBox);

                var frame   = BitmapFrame.Create(renderTarget);
                var encoder = new PngBitmapEncoder {
                    Frames = new[] { frame }
                };

                using (var fileStream = targetFile.Create())
                {
                    encoder.Save(fileStream);
                }
            }
        }
        private void DrawRoutinesLists()
        {
            Style DarkButton = Application.Current.Resources["DarkButton"] as Style;

            foreach (Routine routine in routinesList)
            {
                Viewbox viewboxy      = new Viewbox();
                Button  routineButton = new Button();
                routineButton.Content             = "ROUTINE: " + routine.RoutineID;
                routineButton.Style               = DarkButton;
                routineButton.Foreground          = new SolidColorBrush(Windows.UI.Colors.White);
                routineButton.FontFamily          = new FontFamily("./Assets/Draftsman.tff#Draftsman");
                routineButton.Click              += NavToRoutineRecords;
                routineButton.HorizontalAlignment = HorizontalAlignment.Stretch;
                routineButton.VerticalAlignment   = VerticalAlignment.Stretch;
                routineButton.Margin              = new Thickness(3);
                viewboxy.Child = routineButton;
                viewboxy.HorizontalAlignment = HorizontalAlignment.Stretch;
                viewboxy.VerticalAlignment   = VerticalAlignment.Stretch;
                RoutineStacker.Children.Add(viewboxy);
            }
        }
Example #25
0
        public void Viewbox_Stretch_UniformToFill_Child()
        {
            using var app = UnitTestApplication.Start(TestServices.MockPlatformRenderInterface);

            var target = new Viewbox()
            {
                Stretch = Stretch.UniformToFill, Child = new Rectangle()
                {
                    Width = 100, Height = 50
                }
            };

            target.Measure(new Size(200, 200));
            target.Arrange(new Rect(new Point(0, 0), target.DesiredSize));

            Assert.Equal(new Size(200, 200), target.DesiredSize);
            var scaleTransform = target.Child.RenderTransform as ScaleTransform;

            Assert.NotNull(scaleTransform);
            Assert.Equal(4.0, scaleTransform.ScaleX);
            Assert.Equal(4.0, scaleTransform.ScaleY);
        }
Example #26
0
        public void Viewbox_Stretch_Uniform_Child_With_Unrestricted_Height()
        {
            using var app = UnitTestApplication.Start(TestServices.MockPlatformRenderInterface);

            var target = new Viewbox()
            {
                Child = new Rectangle()
                {
                    Width = 100, Height = 50
                }
            };

            target.Measure(new Size(200, double.PositiveInfinity));
            target.Arrange(new Rect(new Point(0, 0), target.DesiredSize));

            Assert.Equal(new Size(200, 100), target.DesiredSize);
            var scaleTransform = target.Child.RenderTransform as ScaleTransform;

            Assert.NotNull(scaleTransform);
            Assert.Equal(2.0, scaleTransform.ScaleX);
            Assert.Equal(2.0, scaleTransform.ScaleY);
        }
        public unitcontrol(HostingUnit hu)
        {
            VBimage = new Viewbox();

            InitializeComponent();
            Current = hu;
            Id      = Current.HostingUnitkey;
            userGrid.DataContext = Current;
            imageindex           = 0;

            VBimage.Width   = 170;
            VBimage.Height  = 150;
            VBimage.Stretch = Stretch.Fill;
            userGrid.Children.Add(VBimage);
            Grid.SetColumn(VBimage, 2);
            Grid.SetRow(VBimage, 0);
            myImage          = CreatViewImage();
            VBimage.Child    = null;
            VBimage.Child    = myImage;
            VBimage.MouseUp += vbImage_MouseUp;
            occupancy.Text   = MainWindow.myBl.GetAnnualBusyDays(Current).ToString();
        }
Example #28
0
        private Viewbox GetViewbox(string pieceXaml)
        {
            Viewbox     vb     = null;
            XmlDocument xmldoc = new XmlDocument();

            xmldoc.LoadXml(pieceXaml);
            XmlElement root        = xmldoc.DocumentElement;
            string     viewboxXaml = root.InnerXml;

            System.IO.MemoryStream ms = new System.IO.MemoryStream(Encoding.ASCII.GetBytes(viewboxXaml));
            ParserContext          pc = null;

            pc = new ParserContext();
            pc.XmlnsDictionary.Add("", "http://schemas.microsoft.com/winfx/2006/xaml/presentation");
            pc.XmlnsDictionary.Add("x", "http://schemas.microsoft.com/winfx/2006/xaml");

            vb        = XamlReader.Load(ms, pc) as Viewbox;
            vb.Margin = new Thickness(3, 3, 3, 3);
            ms.Close();

            return(vb);
        }
Example #29
0
        private static void OnIsClippedChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e)
        {
            var  beh  = (MoveToViewboxBehavior)sender;
            Grid grid = beh.AssociatedObject;

            Viewbox          vb = VisualHelper.FindVisualChild <Viewbox>(grid);
            ContentPresenter cp = VisualHelper.FindVisualChild <ContentPresenter>(grid);

            if ((bool)e.NewValue)
            {
                // is clipped, so move content to Viewbox
                UIElement element = cp.Content as UIElement;
                cp.Content = null;
                vb.Child   = element;
            }
            else
            {
                // can be shown without clipping, so move content to ContentPresenter
                cp.Content = vb.Child;
                vb.Child   = null;
            }
        }
        public AddUnitWindow(Host host)
        {
            vbImage     = new Viewbox();
            currentUnit = new HostingUnit();
            InitializeComponent();
            this.DataContext = currentUnit;

            bl = FactoryBL.getBL();
            currentUnit.owner = host;
            UnitControlGrid.Children.Add(vbImage);
            imageIndex      = 0;
            vbImage.Width   = 75;
            vbImage.Height  = 75;
            vbImage.Stretch = Stretch.Fill;
            Grid.SetColumn(vbImage, 2);
            Grid.SetRow(vbImage, 0);
            MyImage       = CreateViewImage();
            vbImage.Child = null;
            vbImage.Child = MyImage;
            this.AreaComboBox.ItemsSource = Enum.GetValues(typeof(BE1.TypeAreaOfTheCountry));
            this.UnitComboBox.ItemsSource = Enum.GetValues(typeof(BE1.TypeOfHostingUnit));
        }
Example #31
0
        private static Brush PrepareBrush(string value)
        {
            TextBlock textBlock = new TextBlock()
            {
                Text = value, Background = value == "1" ? Brushes.LawnGreen: Brushes.Yellow
            };
            Size    size    = new Size(40, 40);
            Viewbox viewBox = new Viewbox();

            viewBox.Child = textBlock;
            viewBox.Measure(size);
            viewBox.Arrange(new Rect(size));
            RenderTargetBitmap bitmap = new RenderTargetBitmap(35, 40, 80, 80, PixelFormats.Pbgra32);

            GC.Collect();
            GC.WaitForPendingFinalizers();
            GC.Collect();

            bitmap.Render(viewBox);

            return(new ImageBrush(bitmap));
        }
 public void TestEllipseInViewBox()
 {
     Viewbox vb = new Viewbox();
     vb.Height = 300;
     vb.Width = 300;
     vb.Stretch = Stretch.Fill;
     Ellipse eip = new Ellipse();
     eip.Fill = new SolidColorBrush(Colors.Purple);
     eip.Height = 150;
     eip.Width = 150;
     vb.Child = eip;
     ContentPresenter cp = new ContentPresenter();
     ScaleTransform st = new ScaleTransform();
     TestAsync(
        vb,
        () => cp = (ContentPresenter)VisualTreeHelper.GetParent(eip),
        () => st = cp.RenderTransform as ScaleTransform,
        () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualHeight, eip.ActualHeight * st.ScaleY)),
        () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualWidth, eip.ActualWidth * st.ScaleX)));
 }
 public void TestImageInViewBox()
 {
     Viewbox vb = new Viewbox();
     vb.Height = 400;
     vb.Width = 400;
     vb.Stretch = Stretch.Fill;
     Image image = CreateImage(@"Microsoft.Windows.Controls.Testing.", "Viewbox.Bamboo.jpg");
     vb.Child = image;
     ContentPresenter cp = new ContentPresenter();
     ScaleTransform st = new ScaleTransform();
     TestAsync(
        vb,
        () => cp = (ContentPresenter)VisualTreeHelper.GetParent(image),
        () => st = cp.RenderTransform as ScaleTransform,
        () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualHeight, image.ActualHeight * st.ScaleY)),
        () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualWidth, image.ActualWidth * st.ScaleX)));
 }
 public void TestViewBoxUniformStretch()
 {
     Viewbox vb = new Viewbox();
     vb.Height = 300;
     vb.Width = 300;
     vb.Stretch = Stretch.Uniform;
     CheckBox cb = new CheckBox();
     cb.Content = "Check box";
     vb.Child = cb;
     Point pt = new Point();
     Grid cp = new Grid();
     TestAsync(
        vb,
        () => cp = (Grid)VisualTreeHelper.GetParent(vb),
        () => pt = vb.TransformToVisual(cp).Transform(new Point(0, 0)),
        () => Assert.IsTrue(TestExtensions.AreClose((cp.ActualHeight - vb.ActualHeight) / 2, pt.Y)));
 }
 public void TestRectangleInViewBox()
 {
     Viewbox vb = new Viewbox();
     vb.Height = 300;
     vb.Width = 300;
     vb.Stretch = Stretch.Fill;
     Rectangle rect = new Rectangle();
     rect.Fill = new SolidColorBrush(Colors.Yellow);
     rect.Height = 120;
     rect.Width = 120;
     vb.Child = rect;
     ContentPresenter cp = new ContentPresenter();
     ScaleTransform st = new ScaleTransform();
     TestAsync(
        vb,
        () => cp = (ContentPresenter)VisualTreeHelper.GetParent(rect),
        () => st = cp.RenderTransform as ScaleTransform,
        () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualHeight, rect.ActualHeight * st.ScaleY)),
        () => Assert.IsTrue(TestExtensions.AreClose(vb.ActualWidth, rect.ActualWidth * st.ScaleX)));
 }