예제 #1
0
        /// <summary>
        /// Füllt den Einsatzmanager mit den "Strukturen" Einsatzschwerpunkte, Einheiten, Module, (Material)
        /// </summary>
        public void FuelleEinsatzmanager()
        {
            TreeNode trn_Einsatzmangerbaum = new TreeNode();
            trn_Einsatzmangerbaum.Nodes.Clear();
            TreeNode trn_Einsatzschwerpunke= new TreeNode("Einsatzschwerpunkte",19,19);
            trn_Einsatzschwerpunke.Tag = new Cst_EK_TreeviewTag();
            (trn_Einsatzschwerpunke.Tag as Cst_EK_TreeviewTag).Kontextmenue= ctx_abstrakt_Einsatzschwerpunkte;

            Cdv_Einsatzschwerpunkt[] myEinsatzschwerpunkte = this._Cst_EK.AlleEinsatzschwerpunkte;

            for( int tmp1=0; tmp1<myEinsatzschwerpunkte.GetLength(0); tmp1++)
            {
                TreeNode trn_myEinsatzschwerpunktnode= new TreeNode();
                trn_myEinsatzschwerpunktnode.SelectedImageIndex = 19;
                trn_myEinsatzschwerpunktnode.ImageIndex = 19;
                trn_myEinsatzschwerpunktnode.Text = myEinsatzschwerpunkte[tmp1].Bezeichnung;
                trn_myEinsatzschwerpunktnode.Tag  = new Cst_EK_TreeviewTag();
                (trn_myEinsatzschwerpunktnode.Tag as Cst_EK_TreeviewTag).Eintrag=myEinsatzschwerpunkte[tmp1];
                this._TreeNodeReferenzen.Add(new Cst_EK_TreeviewReferenceItem(myEinsatzschwerpunkte[tmp1].ID,trn_myEinsatzschwerpunktnode));
                (trn_myEinsatzschwerpunktnode.Tag as Cst_EK_TreeviewTag).Kontextmenue=ctx_Einsatzschwerpunkte;
                (trn_myEinsatzschwerpunktnode.Tag as Cst_EK_TreeviewTag).Type=myEinsatzschwerpunkte[tmp1].GetType();
                trn_myEinsatzschwerpunktnode=FuegeUnterknotenHinzu(trn_myEinsatzschwerpunktnode,(ModuleZuESP(myEinsatzschwerpunkte[tmp1].ID)));
                trn_Einsatzschwerpunke.Nodes.Add(trn_myEinsatzschwerpunktnode);
            }

            TreeNode trn_Module= new TreeNode("Module",16,16);
            trn_Module.Tag = new Cst_EK_TreeviewTag();
            (trn_Module.Tag as Cst_EK_TreeviewTag).Kontextmenue=ctx_abstrakt_Module;

            // Damit kein Exception ausgeworfen werden, wenn auf der DB kein Datensatz vorhanden ist
            Cdv_Modul[] myModule = new Cdv_Modul[0];
            myModule = this._Cst_EK.AlleModule;

            for( int tmp1=0; tmp1<myModule.GetLength(0); tmp1++)
            {
                TreeNode trn_myModul= new TreeNode();
                trn_myModul.SelectedImageIndex = 16;
                trn_myModul.ImageIndex = 16;
                trn_myModul.Text = myModule[tmp1].Modulname;
                trn_myModul.Tag  = new Cst_EK_TreeviewTag();
                (trn_myModul.Tag as Cst_EK_TreeviewTag).Eintrag=myModule[tmp1];
                this._TreeNodeReferenzen.Add(new Cst_EK_TreeviewReferenceItem(myModule[tmp1].ID,trn_myModul));

                (trn_myModul.Tag as Cst_EK_TreeviewTag).Kontextmenue=ctx_Module;
                (trn_myModul.Tag as Cst_EK_TreeviewTag).Type=myModule[tmp1].GetType();

                trn_myModul=FuegeUnterknotenHinzu(trn_myModul,(EinheitenZuModul(myModule[tmp1].ID)));
                trn_Module.Nodes.Add(trn_myModul);
            }

            TreeNode trn_Einheiten= new TreeNode("Einheiten",16,16);
            trn_Einheiten.Tag = new Cst_EK_TreeviewTag();
            (trn_Einheiten.Tag as Cst_EK_TreeviewTag).Kontextmenue=ctx_abstrakt_Einheiten;

            Cdv_Einheit[] myEinheiten = this._Cst_EK.AlleEinheiten;

            for( int tmp1=0; tmp1<myEinheiten.GetLength(0); tmp1++)
            {
                TreeNode trn_myEinheit= new TreeNode();
                trn_myEinheit.SelectedImageIndex = 16;
                trn_myEinheit.ImageIndex = 16;
                trn_myEinheit.Text = myEinheiten[tmp1].Name;
                trn_myEinheit.Tag  = new Cst_EK_TreeviewTag();
                (trn_myEinheit.Tag as Cst_EK_TreeviewTag).Eintrag=myEinheiten[tmp1];
                this._TreeNodeReferenzen.Add(new Cst_EK_TreeviewReferenceItem(myEinheiten[tmp1].ID,trn_myEinheit));
                (trn_myEinheit.Tag as Cst_EK_TreeviewTag).Kontextmenue=ctx_Einheiten ;
                (trn_myEinheit.Tag as Cst_EK_TreeviewTag).Type=myEinheiten[tmp1].GetType();

                trn_myEinheit=FuegeUnterknotenHinzu(trn_myEinheit,FülleEinheitMitDaten(myEinheiten[tmp1]));
                trn_Einheiten.Nodes.Add(trn_myEinheit);
            }

            TreeNode trn_Helfer = new TreeNode("Helfer", 18, 18);
            trn_Helfer.Tag = new Cst_EK_TreeviewTag();
            (trn_Helfer.Tag as Cst_EK_TreeviewTag).Kontextmenue = ctx_abstrakt_Helfer;
            Cdv_Helfer[] myHelfer = this._Cst_EK.AlleHelfer;
            IEnumerator ie = myHelfer.GetEnumerator();
            while(ie.MoveNext())
            {
                Cdv_Helfer helfer = (Cdv_Helfer) ie.Current;
                TreeNode trn_myHelfer = new TreeNode();
                trn_myHelfer.SelectedImageIndex = 18;
                trn_myHelfer.ImageIndex = 18;
                trn_myHelfer.Text = helfer.ToString();
                trn_myHelfer.Tag = new Cst_EK_TreeviewTag();
                (trn_myHelfer.Tag as Cst_EK_TreeviewTag).Eintrag = helfer;
                this._TreeNodeReferenzen.Add(new Cst_EK_TreeviewReferenceItem(helfer.ID,trn_myHelfer));
                (trn_myHelfer.Tag as Cst_EK_TreeviewTag).Kontextmenue = this.ctx_Helfer;
                (trn_myHelfer.Tag as Cst_EK_TreeviewTag).Type = helfer.GetType();

                trn_Helfer.Nodes.Add(trn_myHelfer);
            }

            trn_Einsatzmangerbaum.Nodes.Add(trn_Einsatzschwerpunke);
            trn_Einsatzmangerbaum.Nodes.Add(trn_Module);
            trn_Einsatzmangerbaum.Nodes.Add(trn_Einheiten);
            trn_Einsatzmangerbaum.Nodes.Add(trn_Helfer);

            trv_Einsatzmanager.BeginUpdate();
            trv_Einsatzmanager.Nodes.Clear();
            foreach (TreeNode myNode in trn_Einsatzmangerbaum.Nodes)
            {
                trv_Einsatzmanager.Nodes.Add(myNode);
            }
            trv_Einsatzmanager.EndUpdate();
        }