/// ////////////////////////////////////////////////////////////
        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);
            }
        }