using System.Windows.Media.Imaging;\r
using System.Windows.Shapes;\r
using System.Windows.Browser;\r
+using System.Windows.Data;\r
\r
\r
\r
{\r
internal delegate void VoidString(string s);\r
internal delegate void VoidStringObject(String s, System.Object o);\r
- \r
\r
+ public class Double02fFormatter : IValueConverter\r
+ {\r
+ public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)\r
+ {\r
+ string formatString = parameter as string;\r
+ if (!string.IsNullOrEmpty(formatString))\r
+ {\r
+ return string.Format(culture, formatString, value);\r
+ }\r
+ return string.Format("{0, -8:F}", value);\r
+ }\r
+ public object ConvertBack(object val, Type targetType, object parameter, System.Globalization.CultureInfo culture)\r
+ {\r
+ string str = val.ToString();\r
+ double result;\r
+ var objCultureInfo = new System.Globalization.CultureInfo("en-US");\r
+ if (Double.TryParse(str, System.Globalization.NumberStyles.Number, objCultureInfo, out result))\r
+ {\r
+ return result;\r
+ }\r
+ return val;\r
+ }\r
+ }\r
\r
delegate void StackSlider_(Slider s);\r
internal static void stackSlider(Slider s)\r
var val = new System.Windows.Controls.TextBox { Width = 100 };\r
System.Windows.Controls.Canvas.SetLeft(val, 100);\r
var slide = new System.Windows.Controls.Slider {\r
- Minimum = ss.range.begin.val, Maximum = ss.range.end.val,\r
+ Minimum = ss.range.begin.value, Maximum = ss.range.end.value,\r
Name = ss.label,\r
Value = ss.retval,\r
Tag = ss, Width = 200,\r
Path = new PropertyPath("Value"),\r
Mode = System.Windows.Data.BindingMode.TwoWay,\r
Source = slide,\r
+ Converter = new Double02fFormatter()\r
};\r
val.SetBinding(TextBox.TextProperty, b);\r
ss.uislider = slide;\r
val.Background = Color.null_color;\r
val.BorderBrush = Color.null_color;\r
val.Foreground = Color.white;\r
+ val.TextAlignment = TextAlignment.Right;\r
\r
holder.Background = Slider.bgcolor;\r
\r