/// <summary>
        /// Saves the Current State Properties in the Configuration File
        /// </summary>
        public void saveConfigurationData()
        {
            //Saves Properties States into the Configuration File
            TxtAccessor configFile = new TxtAccessor(configFileName.getProjectFile());

            configFile.data.Add("Directory", directory);
            configFile.data.Add("ExcelFile", excelFile);
            configFile.data.Add("Prefix", prefix);
            configFile.data.Add("IgnoredPrograms", "");
            var counter = 0;

            //Adds Ignored Program in this format: Student Profile | Report
            foreach (var program in ignoredPrograms)
            {
                configFile.data["IgnoredPrograms"] += program.getProgram();
                if (counter < ignoredPrograms.Count - 1)
                {
                    configFile.data["IgnoredPrograms"] += " | ";
                }
                counter++;
            }
            if ((int)lastProgram != -1)
            {
                configFile.data.Add("ToProgram", lastProgram.getProgram());
            }
            configFile.data.Add("GenerateExcels", isGenerateExcels ? "1" : "0");
            configFile.data.Add("SaveInBD", isSaveInDB ? "1" : "0");
            configFile.data.Add("DeleteExcels", isDeleteExcels ? "1" : "0");
            configFile.data.Add("GenerateOne", isGenerateOne ? "1" : "0");
            configFile.data.Add("AcumulatedExcel", isAcumulatedExcel ? "1" : "0");
            configFile.data.Add("AutomaticProgram", isAutomaticProgram ? "1" : "0");
            configFile.Save();
        }
        /// <summary>
        /// Gets the Information from the Configuration File into the Properites
        /// </summary>
        public void getConfigurationData()
        {
            //Reads Configuration.txt and Sets the Controls to the Predifined Values
            TxtAccessor configFile = null;

            try {
                configFile = new TxtAccessor(configFileName.getProjectFile());
                configFile.Read();
                if (configFile.data.ContainsKey("Directory"))
                {
                    directory = configFile.data["Directory"];
                }
                if (configFile.data.ContainsKey("ExcelFile"))
                {
                    excelFile = configFile.data["ExcelFile"];
                }
                if (configFile.data.ContainsKey("Prefix"))
                {
                    prefix = configFile.data["Prefix"];
                }
                if (configFile.data.ContainsKey("IgnoredPrograms"))
                {
                    ignoredPrograms.Clear();
                    foreach (var program in configFile.data["IgnoredPrograms"].Split('|').Select(x => x.Trim()))
                    {
                        ignoredPrograms.Add(program.getProgram());
                    }
                }
                if (configFile.data.ContainsKey("ToProgram"))
                {
                    lastProgram = configFile.data["ToProgram"].getProgram();
                }
                if (configFile.data.ContainsKey("GenerateExcels"))
                {
                    isGenerateExcels = configFile.data["GenerateExcels"].parse <int>() != 0;
                }
                if (configFile.data.ContainsKey("SaveInBD"))
                {
                    isSaveInDB = configFile.data["SaveInBD"].parse <int>() != 0;
                }
                if (configFile.data.ContainsKey("DeleteExcels"))
                {
                    isDeleteExcels = configFile.data["DeleteExcels"].parse <int>() != 0;
                }
                if (configFile.data.ContainsKey("GenerateOne"))
                {
                    isGenerateOne = configFile.data["GenerateOne"].parse <int>() != 0;
                }
                if (configFile.data.ContainsKey("AcumulatedExcel"))
                {
                    isAcumulatedExcel = configFile.data["AcumulatedExcel"].parse <int>() != 0;
                }
                if (configFile.data.ContainsKey("AutomaticProgram"))
                {
                    isAutomaticProgram = configFile.data["AutomaticProgram"].parse <int>() != 0;
                }
            } catch {
                //Create a new Configuration File
                using (StreamWriter sw = File.CreateText(configFileName.getProjectFile())) {
                    //Do nothing
                }
            }
        }