public void ConvertStringToThickness()
 {
     var c = new ThicknessConverter();
     var value = "40, 30, 20, 10";
     var converted = c.ConvertFrom(null, CultureInfo.InvariantCulture, value);
     Assert.AreEqual(new Thickness(40, 30, 20, 10), converted);
 }
Ejemplo n.º 2
0
 public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
 {
     if (value != null)
     {
         return(new Thickness());
     }
     return(converter.ConvertFrom(parameter));
 }
        public void ConvertStringToThickness()
        {
            var c         = new ThicknessConverter();
            var value     = "40, 30, 20, 10";
            var converted = c.ConvertFrom(null, CultureInfo.InvariantCulture, value);

            Assert.AreEqual(new Thickness(40, 30, 20, 10), converted);
        }
Ejemplo n.º 4
0
        public void When_Thickness_With_Four_Values_Whitespace()
        {
            var converter = new ThicknessConverter();
            var value     = (Thickness)converter.ConvertFrom("		 23   35 2				65  ");

            Assert.AreEqual(23, value.Left);
            Assert.AreEqual(35, value.Top);
            Assert.AreEqual(2, value.Right);
            Assert.AreEqual(65, value.Bottom);
        }
Ejemplo n.º 5
0
        public void When_Thickness_With_Two_Values_Comma()
        {
            var converter = new ThicknessConverter();
            var value     = (Thickness)converter.ConvertFrom("23,35");

            Assert.AreEqual(23, value.Left);
            Assert.AreEqual(35, value.Top);
            Assert.AreEqual(23, value.Right);
            Assert.AreEqual(35, value.Bottom);
        }
Ejemplo n.º 6
0
        public void When_Thickness_With_Single_Value()
        {
            var converter = new ThicknessConverter();
            var value     = (Thickness)converter.ConvertFrom("23");

            Assert.AreEqual(23, value.Left);
            Assert.AreEqual(23, value.Right);
            Assert.AreEqual(23, value.Bottom);
            Assert.AreEqual(23, value.Top);
        }
 public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
 {
     if (!((bool?)value).HasValue)
     {
         return(Binding.DoNothing);
     }
     if ((bool)value)
     {
         return(new Thickness());
     }
     return(converter.ConvertFrom(parameter));
 }
Ejemplo n.º 8
0
        //EventHandler-Methode für das Click-Event eines Buttons
        private void Start_Button_Click(object sender, RoutedEventArgs e)
        {
            Button neuerButton = new Button();

            neuerButton.Content             = "Start";
            neuerButton.HorizontalAlignment = (HorizontalAlignment)random.Next(0, 4);
            neuerButton.VerticalAlignment   = (VerticalAlignment)random.Next(0, 4);
            neuerButton.Padding             = new Thickness(10);
            neuerButton.Click += NeuerButton_Click;
            mainGrid.Children.Add(neuerButton);

            ThicknessConverter converter = new ThicknessConverter();
            Thickness          t         = (Thickness)converter.ConvertFrom("10 10 5 0");
        }
Ejemplo n.º 9
0
 public void ConvertFromInvalidSource()
 {
     new Action(() => _converter.ConvertFrom(null)).Should().Throw <NotSupportedException>().WithMessage("*null*");
     new Action(() => _converter.ConvertFrom(new object())).Should().Throw <NotSupportedException>().WithMessage($"*{typeof(object)}*");
 }
Ejemplo n.º 10
0
        void InitializeButton()
        {
            Application.Current.MainWindow.Height = nRows * 30 + 20;
            Application.Current.MainWindow.Width  = nCols * 30;
            gameLogic = new GameLogic(nRows, nCols, 2);
            int comLV = 3;

            if (File.Exists("setting.cfg"))
            {
                FileStream file = new FileStream("setting.cfg", FileMode.Open, FileAccess.Read);
                comLV = file.ReadByte();
                file.Close();
            }
            else
            {
                FileStream file = new FileStream("setting.cfg", FileMode.OpenOrCreate, FileAccess.Write);
                file.WriteByte((byte)comLV);
                file.Close();
            }
            computer             = new Computer(gameLogic, comLV);
            buttonBoard          = new Button[nRows, nCols];
            undoMoves            = new Stack <Move>();
            redoMoves            = new Stack <Move>();
            xResourceUri         = new Uri("Resources/Cross.png", UriKind.Relative);
            oResourceUri         = new Uri("Resources/Circle.png", UriKind.Relative);
            UndoButton.IsEnabled = false;
            RedoButton.IsEnabled = false;

            GridLengthConverter gridLengthConverter = new GridLengthConverter();
            ThicknessConverter  thicknessConverter  = new ThicknessConverter();

            for (int i = 0; i < nRows; i++)
            {
                RowDefinition rowDefinition = new RowDefinition();
                rowDefinition.Height = (GridLength)gridLengthConverter.ConvertFrom("*");
                mainGrid.RowDefinitions.Add(rowDefinition);
            }

            for (int i = 0; i < nCols; i++)
            {
                ColumnDefinition columnDefinition = new ColumnDefinition();
                columnDefinition.Width = (GridLength)gridLengthConverter.ConvertFrom("*");
                mainGrid.ColumnDefinitions.Add(columnDefinition);
            }

            for (int i = 0; i < nRows; i++)
            {
                for (int j = 0; j < nCols; j++)
                {
                    Button newButton = new Button();
                    newButton.Name = "Button" + i.ToString() + "_" + j.ToString();

                    newButton.BorderThickness = (Thickness)thicknessConverter.ConvertFrom(0.5);
                    newButton.Background      = Brushes.White;
                    newButton.Click          += NextMove;
                    newButton.Focusable       = false;
                    newButton.Style           = this.FindResource("SetButton") as Style;

                    Grid.SetRow(newButton, i);
                    Grid.SetColumn(newButton, j);

                    mainGrid.Children.Add(newButton);
                    buttonBoard[i, j] = newButton;
                }
            }
        }
Ejemplo n.º 11
0
        internal static Style ToWPFStyle(this XElement elem)
        {
            Style style = new Style();

            if (elem != null)
            {
                var setters = elem.Descendants().Select(elm =>
                {
                    Setter setter = null;
                    if (elm.Name == w + "left" || elm.Name == w + "right" || elm.Name == w + "top" || elm.Name == w + "bottom")
                    {
                        ThicknessConverter tk = new ThicknessConverter();
                        Thickness thinkness   = (Thickness)tk.ConvertFrom(elm.Attribute(w + "sz").Value);

                        BrushConverter bc = new BrushConverter();
                        Brush color       = (Brush)bc.ConvertFrom(string.Format("#{0}", elm.Attribute(w + "color").Value));


                        setter = new Setter(Block.BorderThicknessProperty, thinkness);
                        //style.Setters.Add(new Setter(Block.BorderBrushProperty,color));
                    }
                    else if (elm.Name == w + "rFonts")
                    {
                        FontFamilyConverter ffc = new FontFamilyConverter();
                        setter = new Setter(TextElement.FontFamilyProperty, ffc.ConvertFrom(elm.Attribute(w + "ascii").Value));
                    }
                    else if (elm.Name == w + "b")
                    {
                        setter = new Setter(TextElement.FontWeightProperty, FontWeights.Bold);
                    }
                    else if (elm.Name == w + "color")
                    {
                        BrushConverter bc = new BrushConverter();
                        setter            = new Setter(TextElement.ForegroundProperty, bc.ConvertFrom(string.Format("#{0}", elm.Attribute(w_val).Value)));
                    }
                    else if (elm.Name == w + "em" || elm.Name == w + "i")
                    {
                        setter = new Setter(TextElement.FontStyleProperty, FontStyles.Italic);
                    }
                    else if (elm.Name == w + "strike")
                    {
                        setter = new Setter(Inline.TextDecorationsProperty, TextDecorations.Strikethrough);
                    }
                    else if (elm.Name == w + "sz")
                    {
                        FontSizeConverter fsc = new FontSizeConverter();
                        setter = new Setter(TextElement.FontSizeProperty, fsc.ConvertFrom(elm.Attribute(w_val).Value));
                    }
                    else if (elm.Name == w + "ilvl")
                    {
                        Console.WriteLine(elm.Attribute(w_val));
                    }
                    else if (elm.Name == w + "numPr")
                    {
                        Console.WriteLine(elm.Value);
                    }
                    else if (elm.Name == w + "numId")
                    {
                        Console.WriteLine(elm.Attribute(w_val));

                        int value = int.Parse(elm.Attribute(w + "val").Value);
                        if (value == 2)
                        {
                            setter = new Setter(List.MarkerStyleProperty, TextMarkerStyle.Decimal);
                        }
                    }
                    else if (elm.Name == w + "u")
                    {
                        setter = new Setter(Inline.TextDecorationsProperty, TextDecorations.Underline);
                    }
                    else if (elm.Name == w + "jc")
                    {
                        TextAlignment textAlignment = new TextAlignment();
                        string value = elm.Attribute(w + "val").Value;
                        switch (value)
                        {
                        case "left":
                            textAlignment = TextAlignment.Left;
                            break;

                        case "center":
                            textAlignment = TextAlignment.Center;
                            break;

                        case "right":
                            textAlignment = TextAlignment.Right;
                            break;

                        case "justify":
                            textAlignment = TextAlignment.Justify;
                            break;
                        }

                        setter = new Setter(Block.TextAlignmentProperty, textAlignment);
                    }
                    else
                    {
                        Console.WriteLine(elm.Name);
                    }


                    return(setter);
                });


                foreach (SetterBase setter in setters)
                {
                    if (setter != null)
                    {
                        style.Setters.Add(setter);
                    }
                }
            }

            return(style);
        }