/// <summary> /// Applies the text box view margin. /// </summary> /// <param name="textBox">The text box.</param> /// <param name="margin">The margin.</param> private static void ApplyTextBoxViewMargin(Control textBox, Thickness margin) { if (margin.Equals(new Thickness(double.NegativeInfinity))) { return; } var frameworkElement = (textBox.Template.FindName("PART_ContentHost", textBox) as ScrollViewer)?.Content as FrameworkElement; if (frameworkElement != null) { frameworkElement.Margin = margin; } }
public void NaN () { Thickness t1 = new Thickness (Double.NaN); Assert.IsFalse (t1.Equals (t1), "NaN-1"); Assert.IsTrue (Double.IsNaN (t1.Left), "Left"); Assert.IsTrue (Double.IsNaN (t1.Top), "Top"); Assert.IsTrue (Double.IsNaN (t1.Right), "Right"); Assert.IsTrue (Double.IsNaN (t1.Bottom), "Bottom"); Thickness t2 = new Thickness (Double.NaN); Assert.IsFalse (t1.Equals (t2), "NaN-2"); Assert.IsFalse (t1 == t2, "NaN-3"); Assert.IsTrue (t1 != t2, "NaN-4"); }
public void SpecialCases () { Thickness t = new Thickness (Double.MinValue); Assert.AreEqual ("-1.79769313486232E+308,-1.79769313486232E+308,-1.79769313486232E+308,-1.79769313486232E+308", t.ToString (), "MinValue"); t = new Thickness (Double.MaxValue); Assert.AreEqual ("1.79769313486232E+308,1.79769313486232E+308,1.79769313486232E+308,1.79769313486232E+308", t.ToString (), "MaxValue"); t = new Thickness(Double.NegativeInfinity); Assert.AreEqual ("-Infinity,-Infinity,-Infinity,-Infinity", t.ToString (), "-Infinity"); t = new Thickness(Double.PositiveInfinity); Assert.AreEqual ("Infinity,Infinity,Infinity,Infinity", t.ToString (), "Infinity"); t = new Thickness (Double.NaN); Assert.AreEqual ("Auto,Auto,Auto,Auto", t.ToString ()); t = new Thickness (Double.MinValue, Double.MaxValue, Double.NegativeInfinity, Double.PositiveInfinity); Assert.AreEqual ("-1.79769313486232E+308,1.79769313486232E+308,-Infinity,Infinity", t.ToString (), "Mix"); Assert.IsTrue (t.Equals (t), "Mix.Equals"); t.Bottom = Double.NaN; Assert.IsFalse (t.Equals (t), "MixNaN.Equals"); }
/// <summary> /// Applies the text box view margin. /// </summary> /// <param name="textBox">The text box.</param> /// <param name="margin">The margin.</param> private static void ApplyTextBoxViewMargin(Control textBox, Thickness margin) { if (margin.Equals(new Thickness(double.NegativeInfinity))) { return; } var scrollViewer = textBox.Template.FindName("PART_ContentHost", textBox) as ScrollViewer; if (scrollViewer == null) { return; } var frameworkElement = scrollViewer.Content as FrameworkElement; // remove nice new sytax until i get appveyor working // var frameworkElement = (textBox.Template.FindName("PART_ContentHost", textBox) as ScrollViewer)?.Content as FrameworkElement; if (frameworkElement != null) { frameworkElement.Margin = margin; } }
/// <summary> /// Writes the attribute. /// </summary> /// <param name="name">The name.</param> /// <param name="value">The value.</param> /// <param name="defaultValue">The default value.</param> protected void WriteAttribute(string name, Thickness value, Thickness defaultValue) { if (this.settings.WriteDefaultValues || !value.Equals(defaultValue)) { this.writer.WriteAttributeString(name, value.Format()); } }