using DCSoft.Writer.Dom; using System; using System.Xml.Linq; namespace DocumentManagement { public class BindEventss { private static XTextDocument doc; private static XTextContainerElement container; public BindEventss(DCSoft.Writer.Controls.WriterControl myEditControl) { doc = myEditControl.Document; container = myEditControl.Document; } public static void MouseClickEvent(XTextElement element) { } public static void ContentChangedEvent(XTextElement element) { } private static void SetValueById(string Id, string type, object value) { var element = doc.GetElementsById(Id).FirstElement; if (element != null) { var pChecked = element.GetType().GetProperty(type); pChecked.SetValue(element, value, null); element.EditorRefreshView(); } } private static string GetValueById(string Id, string type) { string result = null; var element = doc.GetElementsById(Id).FirstElement; if (element != null) { var pChecked = element.GetType().GetProperty(type); result = pChecked.GetValue(element, null).ToString(); } return result; } private static void SetValueByName(string name, string type, object value) { var element = doc.GetElementsByName(name).FirstElement; if (element != null) { var pChecked = element.GetType().GetProperty(type); pChecked.SetValue(element, value, null); element.EditorRefreshView(); } } private static bool GetCheckedValueByName(string name) { bool? result = null; var element = doc.GetElementsByName(name).FirstElement; if (element != null) { var pChecked = element.GetType().GetProperty("Checked"); result = Convert.ToBoolean(pChecked.GetValue(element, null)); } return result.Value; } public void BindEven(string name) { var element = doc.GetElementsByName(name).FirstElement; var p = element.GetType().GetProperty("Name").GetValue(element, null); if (p == null) return; string pName = p.ToString(); switch (pName) { case "麻醉方式与手术体位": SetValueById("field6", "Text", element.Text); SetValueById("field12", "Text", GetValueById("field6", "Text")); break; case "体型(BMI)": SetValueById("field7", "Text", element.Text); break; case "年龄": SetValueById("field8", "Text", element.Text); break; case "皮肤": SetValueById("field9", "Text", element.Text); break; case "预计手术时间": SetValueById("field10", "Text", element.Text); break; case "手术施压": SetValueById("field11", "Text", element.Text); break; default: break; } } } }