/// //////////////////////////////////////////////////////////// public void FillNode(TreeNode node, CObjetDonneeAIdNumeriqueAuto objet) { if (objet != null) { string strText = ""; if (m_formuleLibelle != null) { CContexteEvaluationExpression ctx = new CContexteEvaluationExpression(objet); CResultAErreur result = m_formuleLibelle.Eval(ctx); if (result && result.Data != null) { strText = result.Data.ToString(); } } if (strText.Length == 0) { strText = CInterpreteurTextePropriete.GetStringValue(objet, m_strProprieteAffichee, "Non def"); } node.Text = strText; } CInfoNode info; if (node.Tag is CInfoNode) { info = (CInfoNode)node.Tag; } else { info = new CInfoNode(); } info.Objet = objet; node.Tag = info; }
/// //////////////////////////////////////////////////////////// protected void CArbreObjetsDonneesHierarchiques_AfterExpand(object sender, System.Windows.Forms.TreeViewEventArgs e) { TreeNode node = e.Node; CInfoNode info = (CInfoNode)node.Tag; if (!info.AreChildsLoaded) { FillNodes(node, info.Objet); } }
/////////////////////////////////////////////////////////////// private void CArbreObjetsDonneesHierarchiques_ItemDrag(object sender, ItemDragEventArgs e) { TreeNode node = e.Item as TreeNode; CInfoNode info = node != null?node.Tag as CInfoNode:null; CObjetDonneeAIdNumerique objet = info != null?info.Objet:null; if (objet != null) { DoDragDrop(new CReferenceObjetDonneeDragDropData(objet), DragDropEffects.Move | DragDropEffects.Link | DragDropEffects.Copy); } }