private void btnAdd_Click(object sender, EventArgs e) { try { int currentNode = CardManagerBLL.AddBusiness( txtBusinessName.Text.Trim(), (int)BusinessModule.BType, BusinessModule.ParentNode, BusinessModule.BusinessId); /// 当前节点的Level CurrentNode = currentNode; this.DialogResult = DialogResult.OK; } catch (Exception ex) { MessageBox.Show(ex.Message); this.DialogResult = DialogResult.Cancel; } }
/// <summary> /// Get card manager list /// </summary> /// <param name="nodeName"></param> /// <returns></returns> public void LoadTreeData() { if (tvProcessCard.InvokeRequired) { LoadTreeEventHandler loadtreeEventHandler = new LoadTreeEventHandler(() => { try { CardManager cardManager = CardManagerBLL.GetCardManagerListById(0).FirstOrDefault <CardManager>(); //if (cardManager == null) return; //如果数据库内没有记录,则默认增加一条root记录 if (cardManager == null) { cardManager = new CardManager(); cardManager.Name = "工艺模版"; cardManager.BusinessId = Guid.NewGuid(); cardManager.CurrentNode = CardManagerBLL.AddBusiness(cardManager.Name, 0, 0, cardManager.BusinessId); } TreeNode root = new TreeNode(); root.Text = cardManager.Name; root.Tag = cardManager.BusinessId; root.ImageKey = "folder_o"; root.Name = cardManager.CurrentNode.ToString(); root.Expand(); ShowChildNode(root); tvProcessCard.Nodes.Add(root); } catch (Exception ex) { MessageBox.Show(ex.Message); } }); tvProcessCard.BeginInvoke(loadtreeEventHandler, new object[] { }); } }
public void LoadCardData() { //List<Model.ProcessCard> listProcessCard = Kingdee.CAPP.BLL.ProcessCardBLL.GetDefaultProcessCardList(); //dgvCard.DataSource = listProcessCard; try { tvProcessCard.Nodes.Clear(); CardManager cardManager = CardManagerBLL.GetCardManagerListById(-1).FirstOrDefault<CardManager>(); //if (cardManager == null) return; //如果数据库内没有记录,则默认增加一条root记录 if (cardManager == null) { cardManager = new CardManager(); cardManager.Name = "工艺卡片"; cardManager.BusinessId = Guid.NewGuid(); cardManager.CurrentNode = CardManagerBLL.AddBusiness(cardManager.Name, -1, -1, cardManager.BusinessId); } TreeNode root = new TreeNode(); root.Text = cardManager.Name; root.Tag = " "; root.ImageKey = "folder_o"; root.Expand(); ShowChildNode(root); tvProcessCard.Nodes.Add(root); } catch //(Exception ex) { //MessageBox.Show(ex.Message); } }
/// <summary> /// New add module or folder common method /// </summary> public void AddModuleOrFolder(BusinessType type, ProcessCardModule cardModule) { TreeNode node = tvProcessCard.SelectedNode; ///如果整个Treeview都没有选中的话 if (node == null) { node = tvProcessCard.Nodes[0]; } /// 避免直接新建时选中卡片或其他的节点 while (node.ImageKey != "folder" && node.ImageKey != "folder_o") { node = node.Parent; } Guid businessId = Guid.NewGuid(); CardManager businessModule = new CardManager(); businessModule.BType = type; businessModule.ParentNode = int.Parse(node.Name); if (cardModule != null) { businessId = cardModule.Id; } businessModule.BusinessId = businessId; ///当前节点修改缓存且显示在界面上 string newNodeName = string.Empty; AddNodeFrm nodeFrm = null; int currentNode = 0; if (type != BusinessType.Card) { nodeFrm = new AddNodeFrm(businessModule); nodeFrm.ShowDialog(); if (nodeFrm.DialogResult != DialogResult.OK) { return; } newNodeName = nodeFrm.NewNodeName; currentNode = nodeFrm.CurrentNode; } else { newNodeName = cardModule.Name; currentNode = CardManagerBLL.AddBusiness( cardModule.Name, (int)type, businessModule.ParentNode, cardModule.Id); } businessModule.Name = newNodeName; List <CardManager> cardManagerList = null; if (!cardManagerDic.ContainsKey(node.Name)) { cardManagerList = new List <CardManager>(); cardManagerList.Add(businessModule); cardManagerDic.Add(node.Name, cardManagerList); } else { cardManagerList = cardManagerDic[node.Name]; cardManagerList.Add(new CardManager() { BType = type, CurrentNode = currentNode, BusinessId = businessId, Name = newNodeName }); cardManagerDic[node.Name] = cardManagerList; } TreeNode newNode = new TreeNode(); newNode.Text = newNodeName; newNode.Name = currentNode.ToString(); newNode.Tag = businessId; switch (type) { case BusinessType.Root: newNode.ImageKey = "folder_o"; break; case BusinessType.Card: newNode.ImageKey = "card"; break; case BusinessType.FixTip: newNode.ImageKey = "detail"; break; case BusinessType.Detail: newNode.ImageKey = "content"; break; case BusinessType.Folder: newNode.ImageKey = "folder"; break; default: break; } node.Nodes.Add(newNode); ///新增加的节点也要加入缓存 cardManagerDic.Add(newNode.Name, new List <CardManager>()); }