private void btnOK_Click(object sender, EventArgs e) { try { if (rbtMultiRow.Checked == true) { FormProvoider.SetFormItemStyle(Convert.ToInt32(_formItemInfo.formItemID), 0x00010000, true); } else { FormProvoider.SetFormItemStyle(Convert.ToInt32(_formItemInfo.formItemID), 0x00010000, false); } MessageBox.Show("ÉèÖóɹ¦£¡"); this.Close(); } catch (Exception E) { MessageBox.Show(E.ToString(), "ÉèÖôíÎó"); } }
/// <summary> /// 生成表单文件 /// </summary> /// <param name="formDesignerWorkbenchWindow"></param> /// <param name="FilePath"></param> /// <returns></returns> //public bool Execute(FormDesignerWorkbenchWindow formDesignerWorkbenchWindow, out string xmlString) //{ // bool isCheckerok = true; // xmlString = string.Empty; // try // { // List<object> list = new List<object>(); // list.Add(formDesignerWorkbenchWindow.formValidatesCollection); // //list.Add(formDesignerWorkbenchWindow.dataDefineResource); // list.Add(formDesignerWorkbenchWindow.formDataCollection); // list.Add(formDesignerWorkbenchWindow.formRightsCollection); // BuildRuleChecker.CheckReference(formDesignerWorkbenchWindow); // string message = string.Empty; // if (isCheckerok) // { // xmlString = DistFormXmlBuilder.BuildXml(list,formDesignerWorkbenchWindow, // formDesignerWorkbenchWindow.SheetLayoutXML); // } // } // catch(Exception E) // { // isCheckerok = false; // MessageBox.Show(E.Message); // } // return isCheckerok; //} /// <summary> /// 读取单个表单文件 /// </summary> /// <param name="dockFormDesigner"></param> /// <param name="filePath"></param> public void ResetXml(DockFormDesigner dockFormDesigner, string fileContent) { #region //控件 FormXmlParser formXmlParser = new FormXmlParser(fileContent, true); PageProperty.IsPrint = formXmlParser.GetPrintProperty("/Form", "isprint"); Dictionary <string, string> dic = new Dictionary <string, string>(); ControlCollection controlCollection = formXmlParser.GetControls(dockFormDesigner, "/Form/Control", out dic); string width, height; dic.TryGetValue("width", out width); dic.TryGetValue("height", out height); FormProvoider.SetFormViewSize(Convert.ToInt32(width), Convert.ToInt32(height)); foreach (KeyValuePair <string, object> kvp in controlCollection) { #region FormItemType == 5 if (((GeneralAttribute)kvp.Value).FormItemType == 5) { FormProvoider.Rect rcRect = new FormProvoider.Rect(); SetRect(out rcRect, (GeneralAttribute)kvp.Value); FormProvoider.CreateFormItem(Convert.ToInt32(((GeneralAttribute)kvp.Value).FormItemType), rcRect, Convert.ToInt32(kvp.Key), ((GeneralAttribute)kvp.Value).ExtensionType); TableContorlAttribute tableContorlAttribute = (TableContorlAttribute)kvp.Value; int page = 0; foreach (KeyValuePair <string, Group> kvpGroup in tableContorlAttribute.Groups) { FormProvoider.InsertTabPage(((GeneralAttribute)kvp.Value).FormItemId, kvpGroup.Value.Name, page); foreach (KeyValuePair <string, GeneralAttribute> kvpChildAttribute in kvpGroup.Value.GroupControls) { FormProvoider.Rect rcRectChild = new FormProvoider.Rect(); SetRect(out rcRectChild, (GeneralAttribute)kvpChildAttribute.Value); FormProvoider.CreateChlidFormItem(kvpChildAttribute.Value.FormItemType, rcRectChild, Convert.ToInt32(kvpChildAttribute.Key), Convert.ToInt32(kvp.Key), page, ((GeneralAttribute)kvpChildAttribute.Value).ExtensionType); if (((GeneralAttribute)kvpChildAttribute.Value).Multiline == true && ((GeneralAttribute)kvpChildAttribute.Value).FormItemType == 1) { FormProvoider.SetFormItemStyle(Convert.ToInt32(kvpChildAttribute.Key), 0x00010000, true);//0x00010000 } if (((GeneralAttribute)kvpChildAttribute.Value).FormItemType == 7) { //SetDataGrid(formDesignerWorkbenchWindow, kvpChildAttribute.Key, kvpChildAttribute.Value); } if (((GeneralAttribute)kvpChildAttribute.Value).FormItemType == 20) { SetRadioButtonList(kvpChildAttribute.Value); } if (((GeneralAttribute)kvpChildAttribute.Value).FormItemType == 4 || ((GeneralAttribute)kvpChildAttribute.Value).FormItemType == 15 || ((GeneralAttribute)kvpChildAttribute.Value).FormItemType == 3 || ((GeneralAttribute)kvpChildAttribute.Value).FormItemType == 6) { FormProvoider.SetStaticText(Convert.ToInt32(kvpChildAttribute.Key), kvpChildAttribute.Value.Text); } if (((GeneralAttribute)kvpChildAttribute.Value).FormItemType == 4) { FormProvoider.FontWnd font = new FormProvoider.FontWnd(); font.itemName = ((GeneralAttribute)kvpChildAttribute.Value).WindowTextFont.FontFamily.Name; font.ftSize = Convert.ToInt32(((GeneralAttribute)kvpChildAttribute.Value).WindowTextFont.Size); font.ftStyle = GeneralAttribute.GetFontStyle(((GeneralAttribute)kvpChildAttribute.Value).WindowTextFont); FormProvoider.SetFormItemFont(((GeneralAttribute)kvpChildAttribute.Value).FormItemId, font); FormProvoider.SetFormItemStyle(((GeneralAttribute)kvpChildAttribute.Value).FormItemId, 0x00800000, ((GeneralAttribute)kvpChildAttribute.Value).Border); } } page++; } } #endregion else if (((GeneralAttribute)kvp.Value).FormItemType == 7) { FormProvoider.Rect rcRect = new FormProvoider.Rect(); SetRect(out rcRect, (GeneralAttribute)kvp.Value); FormProvoider.CreateFormItem(Convert.ToInt32(((GeneralAttribute)kvp.Value).FormItemType), rcRect, Convert.ToInt32(kvp.Key), ((GeneralAttribute)kvp.Value).ExtensionType); //SetDataGrid(formDesignerWorkbenchWindow, kvp.Key, kvp.Value); } else if (((GeneralAttribute)kvp.Value).FormItemType == 20) { FormProvoider.Rect rcRect = new FormProvoider.Rect(); SetRect(out rcRect, (GeneralAttribute)kvp.Value); FormProvoider.CreateFormItem(Convert.ToInt32(((GeneralAttribute)kvp.Value).FormItemType), rcRect, Convert.ToInt32(kvp.Key), ((GeneralAttribute)kvp.Value).ExtensionType); SetRadioButtonList(kvp.Value); } else if (((GeneralAttribute)kvp.Value).FormItemType == 255)//直线 { FormProvoider.Rect rcRect = new FormProvoider.Rect(); SetRect(out rcRect, (GeneralAttribute)kvp.Value); FormProvoider.CreateFormItem(Convert.ToInt32(((GeneralAttribute)kvp.Value).FormItemType), rcRect, Convert.ToInt32(kvp.Key), ((GeneralAttribute)kvp.Value).ExtensionType); } else { FormProvoider.Rect rcRect = new FormProvoider.Rect(); SetRect(out rcRect, (GeneralAttribute)kvp.Value); FormProvoider.CreateFormItem(Convert.ToInt32(((GeneralAttribute)kvp.Value).FormItemType), rcRect, Convert.ToInt32(kvp.Key), ((GeneralAttribute)kvp.Value).ExtensionType); if (((GeneralAttribute)kvp.Value).FormItemType == 1) { DockFormDesigner.controlIdItems.Add(kvp.Key); } else { FormProvoider.SetStaticText(Convert.ToInt32(kvp.Key), ((GeneralAttribute)kvp.Value).Text); } //Dap2xProvoider.SetFormItemStyle(((GeneralAttribute)kvp.Value).FormItemId, 0x00800000, false); if (((GeneralAttribute)kvp.Value).FormItemType == 1 && ((GeneralAttribute)kvp.Value).Multiline == true) { FormProvoider.SetFormItemStyle(((GeneralAttribute)kvp.Value).FormItemId, 0x00010000, true); } else { FormProvoider.SetFormItemStyle(((GeneralAttribute)kvp.Value).FormItemId, 0x00010000, false); } if (((GeneralAttribute)kvp.Value).FormItemType == 4) { FormProvoider.FontWnd font = new FormProvoider.FontWnd(); font.itemName = ((GeneralAttribute)kvp.Value).WindowTextFont.FontFamily.Name; font.ftSize = Convert.ToInt32(((GeneralAttribute)kvp.Value).WindowTextFont.Size); font.ftStyle = GeneralAttribute.GetFontStyle(((GeneralAttribute)kvp.Value).WindowTextFont); FormProvoider.SetFormItemFont(((GeneralAttribute)kvp.Value).FormItemId, font); Color color = ((GeneralAttribute)kvp.Value).WindowTextColor; FormProvoider.SetFormItemColor(((GeneralAttribute)kvp.Value).FormItemId, color.B << 16 | color.G << 8 | color.R); //边框 FormProvoider.SetFormItemStyle(((GeneralAttribute)kvp.Value).FormItemId, 0x00800000, ((GeneralAttribute)kvp.Value).Border); } } } #endregion //formDesignerWorkbenchWindow.formDataCollection = formDesignerWorkbenchWindow.FormParameter.FormDataCollection; //formDesignerWorkbenchWindow.formValidatesCollection = getObjectFromXml.GetFormValidatesCollection("/Form/Validation");//formValidatesCollection //formDesignerWorkbenchWindow.formRightsCollection = getObjectFromXml.GetFormRightsCollection("/Form/Right");//formRightsCollection ////zhanben20100919 新增表单脚本功能 //formDesignerWorkbenchWindow.FormScriptString = getObjectFromXml.GetFormScriptString("/Form/Script"); }