+ public class Browser\r
+ {\r
+ public class Element\r
+ {\r
+ HtmlElement elem;\r
+ System.Object retval;\r
+\r
+ public Element()\r
+ {\r
+ retval = 0;\r
+ }\r
+\r
+ public static Element byID(string id_tag)\r
+ {\r
+ return getElementById(id_tag);\r
+ }\r
+ public static Element getElementById(string id_tag)\r
+ {\r
+ Element tmp = new Element();\r
+ Internal.Main.widgetStack.Dispatcher.BeginInvoke(new Connector.VoidString(tmp.getElementById__), id_tag);\r
+ return tmp;\r
+ }\r
+ void getElementById__(string id_tag)\r
+ {\r
+ elem = HtmlPage.Document.GetElementById(id_tag);\r
+ }\r
+\r
+ public void setProperty(string name, System.Object value)\r
+ {\r
+ Internal.Main.widgetStack.Dispatcher.BeginInvoke(new Connector.VoidStringObject(setProperty__), name, value);\r
+ }\r
+ public void setProperty__(string name, System.Object value)\r
+ {\r
+ elem.SetProperty(name, value);\r
+ }\r
+\r
+\r
+ public static implicit operator double(Element i) { return i.getValueAsDouble(); }\r
+ public double getValueAsDouble()\r
+ {\r
+ double v = 0;\r
+ getProperty("value");\r
+ try\r
+ {\r
+ v = double.Parse(retval.ToString());\r
+ }\r
+ catch (FormatException e)\r
+ {\r
+ v = 0;\r
+ }\r
+ return v;\r
+ }\r
+\r
+ public static implicit operator string(Element i) { return i.getProperty("value").ToString(); }\r
+ public System.Object getProperty(string name)\r
+ {\r
+ Internal.Main.widgetStack.Dispatcher.BeginInvoke(new Connector.VoidString(getProperty__), name);\r
+ return retval;\r
+ }\r
+ public void getProperty__(string name)\r
+ {\r
+ retval = elem.GetProperty(name);\r
+ }\r
+ }\r
+ }\r