/// <summary> /// 参入对象方法参数面板 /// </summary> private void LoadMethodPlan() { //if (this.ddlMethod.SelectedValue == this.SelectedEvent) // return; //先移除之前的树节点 if (this._treeNode != null) { FormEventEditor.Instance.RemoveParameterTreeNode(_treeNode); } //EventProvideAttribute attribute = ddlMethod.SelectedValue as EventProvideAttribute; //this.SelectedEvent = availabilityMethod.CreateInstance(attribute); IEventEditorSupport eventParameterSet = this.SelectedEvent as IEventEditorSupport; if (eventParameterSet == null) { return; } ICallEntityMethod callEntityMethod = this.SelectedEvent as ICallEntityMethod; if (callEntityMethod == null) { return; } //获取该事件的设置树节点 _treeNode = eventParameterSet.EditorAdapter.EditorNode; //将窗体元素对象实体作为参数传过去 CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm objectForm = (CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm)Enum.Parse(typeof(CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm), ddlObjectForm.SelectedValue.ToString()); callEntityMethod.CallEntityMethodObjectForm = objectForm; switch (objectForm) { case CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm.Caller: callEntityMethod.CallEntityMethodFormElement = this.txtFormElement.Text; break; case CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm.Current: callEntityMethod.CallEntityMethodFormElement = this.ddlFormElement.SelectedFormElement; break; } //加入树节点 FormEventEditor.Instance.AddParameterTreeNode(_treeNode); }
public EventTypeCollection GetAvailabilityEntityMethod(CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm objectForm) { EventTypeCollection availabilityEvent = new EventTypeCollection(); switch (objectForm) { case CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm.Current: availabilityEvent.Add(typeof(DataListRefreshEvent)); availabilityEvent.Add(typeof(DataListAddRowEvent)); availabilityEvent.Add(typeof(DataListUpdateRowEvent)); availabilityEvent.Add(typeof(DataListDeleteRowEvent)); break; case CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm.Caller: availabilityEvent.Add(typeof(DataListAddRowEvent)); availabilityEvent.Add(typeof(DataListUpdateRowEvent)); availabilityEvent.Add(typeof(DataListDeleteRowEvent)); break; } return(availabilityEvent); }
public override List <XObject> GetXml() { List <XObject> _xObject = new List <XObject>(); _xObject.Add(new XAttribute("Name", txtName.Text)); _xObject.Add(new XAttribute("Code", txtCode.Text)); CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm objectForm = (CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm)Enum.Parse(typeof(CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm), ddlObjectForm.SelectedValue.ToString()); _xObject.Add(new XElement("ObjectForm", (int)objectForm)); switch (objectForm) { case CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm.Caller: _xObject.Add(new XElement("FormElement", this.txtFormElement.Text)); break; case CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm.Current: _xObject.Add(new XElement("FormElement", ((EntityBase)this.ddlFormElement.SelectedItem).Id)); break; } _xObject.Add(new XElement("FormElementControlType", FormElementEntityDevTypes.Instance.GetProvideAttribute((EntityBase)this.ddlFormElement.SelectedItem).Code)); //EventProvideAttribute attribute = ddlEvent.SelectedValue as EventProvideAttribute; EventProvideAttribute attribute = availabilityEvent.GetSelectedValue() as EventProvideAttribute; _xObject.Add(new XElement("EventCode", attribute.Code)); IEventEditorSupport eventParameterSet = this.SelectedEvent as IEventEditorSupport; XElement xElement = eventParameterSet.EditorAdapter.GetParameterSetXml(); xElement.Add(new XAttribute("Name", Guid.NewGuid().ToString())); xElement.Add(new XAttribute("Code", Guid.NewGuid().ToString())); _xObject.Add(xElement); return(_xObject); }
private void ddlObjectForm_SelectedIndexChanged(object sender, EventArgs e) { CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm objectForm = (CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm)Enum.Parse(typeof(CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm), ddlObjectForm.SelectedValue.ToString()); switch (objectForm) { case CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm.Caller: this.txtFormElement.Visible = true; this.ddlFormElement.Visible = false; this.txtFormElement.AllowEmpty = false; this.ddlFormElement.AllowEmpty = true; this.btnBrowse.Enabled = true; this.txtFormElement.Text = String.Empty; break; case CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm.Current: this.txtFormElement.Visible = false; this.ddlFormElement.Visible = true; this.txtFormElement.AllowEmpty = true; this.ddlFormElement.AllowEmpty = false; this.btnBrowse.Enabled = false; this.ddlFormElement.SelectedIndex = -1; break; } availabilityEvent.SetSelectedValue(null); availabilityEvent.Enabled = false; }
/// <summary> /// 初始化当前可用事件 /// </summary> /// <param name="formElementEntityDev"></param> /// <param name="objectForm"></param> private void InitAvailabilityMethod(ICallEntityMethodSupport formElementEntityDev, CallUIElementMethodEvent.EnumCallUIElementMethodTargetForm objectForm) { //if (this.treeNode != null) //{ // FormEventEditor.Instance.RemoveParameterTreeNode(treeNode); // this.treeNode = null; // this.SelectedEvent = null; // this.eventParameterSet = null; //} _eventProvideAttribute.Clear(); if (_availabilityMethod != null) { _availabilityMethod.Clear(); } if (formElementEntityDev == null) { this.availabilityEvent.SetSelectedValue(null); this.availabilityEvent.Enabled = false; return; } //加个空行 //_eventProvideAttribute.Add(new EventProvideAttribute(String.Empty, -1)); _availabilityMethod = formElementEntityDev.GetAvailabilityEntityMethod(objectForm); foreach (Type eventType in _availabilityMethod) { _eventProvideAttribute.Add(_availabilityMethod.GetProvideAttribute(eventType)); } //显示当前可用事件 availabilityEvent.DataBind(_eventProvideAttribute); //如果可有事件为0 if (_availabilityMethod.Count == 0) { availabilityEvent.Enabled = false; } else { availabilityEvent.Enabled = true; } }