private void ApplyNodesControlStateRecursive(Pair[] nodesState, WebTreeNodeCollection nodes) { for (int i = 0; i < nodesState.Length; i++) { Pair nodeState = nodesState[i]; object[] values = (object[])nodeState.First; string itemID = (string)values[0]; WebTreeNode node = nodes.Find(itemID); if (node != null) { if (!node.IsEvaluated) { bool isEvaluated = (bool)values[2]; if (isEvaluated) { node.EvaluateExpand(); } } if (node.IsEvaluated) { bool isExpanded = (bool)values[1]; node.IsExpanded = isExpanded; if (node.Children.Count == 0) { node.IsExpanded = false; } } ApplyNodesControlStateRecursive((Pair[])nodeState.Second, node.Children); } } }
/// <summary> Saves the settings of the <paramref name="nodes"/> and returns this control state </summary> private Pair[] SaveNodesStateRecursive(WebTreeNodeCollection nodes) { Pair[] nodesState = new Pair[nodes.Count]; for (int i = 0; i < nodes.Count; i++) { WebTreeNode node = (WebTreeNode)nodes[i]; Pair nodeState = new Pair(); object[] values = new object[10]; values[0] = node.ItemID; values[1] = node.IsExpanded; values[2] = node.IsEvaluated; values[3] = node.IsSelected; values[4] = node.MenuID; values[5] = node.Text; values[6] = node.ToolTip; values[7] = node.Icon; if (node is BusinessObjectTreeNode) { values[8] = ((BusinessObjectTreeNode)node).PropertyIdentifier; values[9] = true; } else { values[9] = false; } nodeState.First = values; nodeState.Second = SaveNodesStateRecursive(node.Children); nodesState[i] = nodeState; } return(nodesState); }
public override void OnMenuItemWxeFunctionCommandClick(WebMenuItem menuItem, WebTreeNode node) { if (menuItem != null && menuItem.Command != null) { if (menuItem is BocMenuItem) { BocMenuItemCommand command = (BocMenuItemCommand)menuItem.Command; IBusinessObject businessObject = null; if (node is BusinessObjectTreeNode) { businessObject = ((BusinessObjectTreeNode)node).BusinessObject; } Page page = node.TreeView.Page; if (page is IWxePage) { command.ExecuteWxeFunction((IWxePage)page, businessObject); } //else // command.ExecuteWxeFunction (Page, businessObject); } else { base.OnMenuItemWxeFunctionCommandClick(menuItem, node); } } }
public override WebMenuItem[] InitalizeMenuItems(WebTreeNode node) { var menuItem = new WebMenuItem { ItemID = "MenuItem", RequiredSelection = RequiredSelection.Any, Text = "Event", Command = { Type = CommandType.Event } }; return(new[] { menuItem }); }
private void Node332Button_Click(object sender, EventArgs e) { WebTreeNode node3 = (WebTreeNode)WebTreeView.Nodes[3]; node3.EvaluateExpand(); WebTreeNode node33 = (WebTreeNode)node3.Children[3]; node33.EvaluateExpand(); WebTreeNode node332 = (WebTreeNode)node33.Children[2]; node332.EvaluateExpand(); node332.IsSelected = true; }
public override void OnMenuItemEventCommandClick(WebMenuItem menuItem, WebTreeNode node) { if (menuItem != null && menuItem.Command != null) { if (menuItem is BocMenuItem) { ((BocMenuItemCommand)menuItem.Command).OnClick((BocMenuItem)menuItem); } else { base.OnMenuItemEventCommandClick(menuItem, node); } } }
public override WebMenuItem[] InitalizeMenuItems(WebTreeNode node) { ArgumentUtility.CheckNotNull("node", node); WebMenuItem eventMenuItem = new WebMenuItem(); eventMenuItem.Text = "Event"; eventMenuItem.Command.Type = CommandType.Event; WebMenuItem wxeMenuItem = new WebMenuItem(); wxeMenuItem.Text = "WXE"; wxeMenuItem.Command.Type = CommandType.WxeFunction; wxeMenuItem.Command.WxeFunctionCommand.TypeName = TypeUtility.GetPartialAssemblyQualifiedName(typeof(TestWxeFunction)); WebMenuItem[] menuItems = new WebMenuItem[] { eventMenuItem, wxeMenuItem }; return(menuItems); }
public string InitTreeNode_json(List <Authority> treelist, int fid, bool showoper) { List <WebTreeNode> webTreeNodes = new List <WebTreeNode>(); List <Authority> fAu_ls = treelist.Where(au => au.ParentID == fid).ToList(); foreach (var tn in fAu_ls) { WebTreeNode wtn = new WebTreeNode { id = tn.id, iconCls = tn.Imageid, text = tn.TreeName, children = GetChild(treelist, tn.id, showoper), attributes = CreateUrl(tn) }; webTreeNodes.Add(wtn); } return(DataSwitch.DataToJson(webTreeNodes)); }
private void EvaluateTreeNode(WebTreeNode node) { ArgumentUtility.CheckNotNullAndType <BocTreeNode> ("node", node); if (node.IsEvaluated) { return; } BusinessObjectTreeNode businessObjectNode = node as BusinessObjectTreeNode; BusinessObjectPropertyTreeNode propertyNode = node as BusinessObjectPropertyTreeNode; if (businessObjectNode != null) { CreateAndAppendBusinessObjectNodeChildren(businessObjectNode); } else if (propertyNode != null) { CreateAndAppendPropertyNodeChildren(propertyNode); } }
/// <summary> Fires the <see cref="Click"/> event. </summary> protected virtual void OnClick(WebTreeNode node, string[] path) { BocTreeNodeClickEventHandler handler = (BocTreeNodeClickEventHandler)Events[s_clickEvent]; if (handler != null) { ArgumentUtility.CheckNotNullAndType <BocTreeNode> ("node", node); BusinessObjectTreeNode businessObjectNode = node as BusinessObjectTreeNode; BusinessObjectPropertyTreeNode propertyNode = node as BusinessObjectPropertyTreeNode; BocTreeNodeClickEventArgs e = null; if (businessObjectNode != null) { e = new BocTreeNodeClickEventArgs(businessObjectNode, path); } else if (propertyNode != null) { e = new BocTreeNodeClickEventArgs(propertyNode, path); } handler(this, e); } }
/// <summary> Fires the <see cref="SelectionChanged"/> event. </summary> protected virtual void OnSelectionChanged(WebTreeNode node) { BocTreeNodeEventHandler handler = (BocTreeNodeEventHandler)Events[s_selectionChangedEvent]; if (handler != null) { ArgumentUtility.CheckNotNullAndType <BocTreeNode> ("node", node); BusinessObjectTreeNode businessObjectNode = node as BusinessObjectTreeNode; BusinessObjectPropertyTreeNode propertyNode = node as BusinessObjectPropertyTreeNode; BocTreeNodeEventArgs e = null; if (businessObjectNode != null) { e = new BocTreeNodeEventArgs(businessObjectNode); } else if (propertyNode != null) { e = new BocTreeNodeEventArgs(propertyNode); } handler(this, e); } }
//递归子类 private object GetChild <T>(List <T> treelist, int id, DelTreeAttr delTreeAttr) { List <WebTreeNode> wtnls = new List <WebTreeNode>(); foreach (var au in treelist) { BaseTree bt = (BaseTree)(object)au; if (bt.FatherID != id) { continue; } WebTreeNode wtn = new WebTreeNode { id = bt.Id, iconCls = bt.ImagePath, text = bt.NodeName, state = bt.State, children = GetChild(treelist, bt.Id, delTreeAttr), attributes = delTreeAttr(au) }; wtnls.Add(wtn); } return(wtnls); }
//初始化以easyui树的数据结构 public List <WebTreeNode> InitTreeNode <T>(List <T> treelist, DelTreeAttr delTreeAttr, int fid = 0) { List <WebTreeNode> webTreeNodes = new List <WebTreeNode>(); foreach (var tn in treelist) { BaseTree bt = (BaseTree)(object)tn; if (bt.FatherID != fid) { continue; } WebTreeNode wtn = new WebTreeNode { id = bt.Id, iconCls = bt.ImagePath, text = bt.NodeName, state = bt.State, children = GetChild(treelist, bt.Id, delTreeAttr), attributes = delTreeAttr(tn) }; webTreeNodes.Add(wtn); } return(webTreeNodes); }
private object GetChild(List <Authority> treelist, int id, bool showoper) { List <WebTreeNode> wtnls = new List <WebTreeNode>(); List <Authority> sonAu_ls = treelist.Where(au => au.ParentID == id).ToList(); if (!showoper) { sonAu_ls = sonAu_ls.Where(au => au.AuthTypeID != 6).ToList(); } foreach (var au in sonAu_ls) { WebTreeNode wtn = new WebTreeNode { id = au.id, iconCls = au.Imageid, text = au.TreeName, children = GetChild(treelist, au.id, showoper), attributes = CreateUrl(au) }; wtnls.Add(wtn); } return(wtnls); }
public override void OnMenuItemEventCommandClick(WebMenuItem menuItem, WebTreeNode node) { base.OnMenuItemEventCommandClick(menuItem, node); TestOutput.SetActionPerformed(node.TreeView.ID, "NodeContextMenuClick", node.ItemID + "|" + node.Text); }
public override void OnMenuItemWxeFunctionCommandClick(WebMenuItem menuItem, WebTreeNode node) { base.OnMenuItemWxeFunctionCommandClick(menuItem, node); }
public override void OnMenuItemEventCommandClick(WebMenuItem menuItem, WebTreeNode node) { base.OnMenuItemEventCommandClick(menuItem, node); }
public override void PreRenderMenuItems(WebTreeNode node, WebMenuItemCollection menuItems) { base.PreRenderMenuItems(node, menuItems); }
private void EvaluateTreeNode(WebTreeNode node) { node.IsEvaluated = true; }