Пример #1
0
        /// <summary>
        /// Controlla se esiste un file programma.docx nel programma attualmente visualizzato
        /// - se esiste: apre il file docx
        /// - se non esiste : crea un file docx con tutte le informazioni del programma
        /// </summary>
        private void Button_Apri_Docx(object sender, RoutedEventArgs e)
        {
            string file = Globals.PROGRAMMIpath + "Id" + ProgSelezionato + @"\programma.docx";

            if (File.Exists(file))
            {
                System.Diagnostics.Process.Start(file);
            }
            else
            {
                Programma programma = Globals.PROGRAMMI.Find(x => x.numero.Equals(ProgSelezionato));
                if (programma != null)
                {
                    try
                    {
                        var doc = Xceed.Words.NET.DocX.Create(file);
                        doc.InsertParagraph("Id" + ProgSelezionato + "  -  " + programma.nome).Bold();
                        doc.InsertParagraph("\n DATA CREAZIONE: " + programma.dataCreazione);
                        doc.InsertParagraph("\n NOME UTENTE: " + programma.nomeUtente);
                        doc.InsertParagraph("\n PASSWORD: "******"\n DESCRIZIONE: " + programma.descrizione);
                        doc.Save();
                    }
                    catch (IOException)
                    {
                        string msg = "E05 - Il file " + file + " non è stato creato per un problema";
                        MessageBox.Show(msg, "E05", MessageBoxButton.OK, MessageBoxImage.Error, MessageBoxResult.OK, MessageBoxOptions.RightAlign);
                        Globals.log.Error(msg);
                    }
                    DataGrid dataGrid = this.FindName("dataGrid") as DataGrid;
                    ChangePreview(dataGrid, null);
                }
            }
        }
Пример #2
0
        /// <summary>
        /// Aggiorna gli elementi nella DataGrid:
        /// - aggiorna le ultime modifiche in programmi
        /// - aggiunge tutti i programmi presenti e FILTRATI dopo aver svuotato la DataGrid
        /// - mentre scorre i programmi restituisce il primo visualizzato per permettere di selezionarlo durante la ricerca
        /// </summary>
        private Programma updateList(string filter, bool?obsoleti)
        {
            Console.WriteLine("Update list1");
            Globals.log.Info("Update list1");
            Programma primo    = new Programma(0, "", "", "", false, "", "", "", false);
            DataGrid  dataGrid = this.FindName("dataGrid") as DataGrid;

            ultimaModifica.aggiornoModifiche(Globals.PROGRAMMI);
            if (dataGrid != null)
            {
                dataGrid.Items.Clear();
                int i = 0;
                foreach (Programma p in Globals.PROGRAMMI)
                {
                    if (obsoleti == null || p.obsoleto == obsoleti)
                    {
                        if (p.toName().IndexOf(filter, 0, StringComparison.CurrentCultureIgnoreCase) != -1)
                        {
                            if (i == 0)
                            {
                                primo = p;
                            }
                            dataGrid.Items.Add(p);
                            i++;
                        }
                    }
                }
            }
            return(primo);
        }
Пример #3
0
        /// <summary>
        /// Richiamato ogni volta che viene modificato il testo nella TextBox di ricerca.
        /// Aggiorna e filtra la lista e poi seleziona la prima riga visualizzata.
        /// </summary>
        private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
        {
            Programma p        = updateList(((TextBox)sender).Text, obs);
            DataGrid  dataGrid = this.FindName("dataGrid") as DataGrid;

            dataGrid.SelectedIndex = 0;
            dataGrid.ScrollIntoView(p);
        }
Пример #4
0
 /// <summary>
 /// Costruttore a cui viene passato  il programma da modificare
 /// Visualizza i dati relativi a quel programma
 /// </summary>
 public Form_Modifica(Programma prog)
 {
     this.prog = prog;
     InitializeComponent();
     label5.Text   = "Id" + prog.numero;
     textBox1.Text = prog.nome;
     textBox2.Text = prog.descrizione;
     textBox3.Text = prog.nomeUtente;
     textBox4.Text = prog.password;
 }
Пример #5
0
 /// <summary>
 /// Bottone che apre il form per la modifica del programma selezionato
 /// - Possibilità di cambiarne i parametri
 /// - Possibilità di eliminare il programma
 /// </summary>
 private void Button_Modify(object sender, RoutedEventArgs e)
 {
     if (ProgSelezionato != 0)
     {
         try
         {
             Programma     itemToRemove = Globals.PROGRAMMI.Single(r => r.numero == ProgSelezionato);
             Form_Modifica form         = new Form_Modifica(itemToRemove);
             form.FormClosed
                 += new System.Windows.Forms.FormClosedEventHandler(this.readAgainListPrograms);
             form.ShowDialog();
         }
         catch (InvalidOperationException)
         {
             Globals.log.Info("Non è stato trovato nessun elemento con indice " + ProgSelezionato + " , probabilmente è stato eliminato in precedenza");
         }
     }
 }
        /// <summary>
        /// Da all'utente la possibilità di scegliere se effettuare l'importazione o no.
        /// Se i percorsi immessi portano a cartelle esistenti effettua la conversione.
        /// A conversione terminata un MessageBox visualizza l'esito ottenuto.
        /// </summary>
        private void button2_Click(object sender, EventArgs e)
        {
            string originFile = textBox1.Text.ToString();
            string tb2        = textBox2.Text.ToString();
            string destFile   = tb2 + "PROGRAMMI.csv";

            if (!File.Exists(originFile) || !Directory.Exists(tb2))
            {
                string msg = "Uno dei percorsi inseriti non esiste, impossibile eseguire l'operazione.";
                System.Windows.MessageBoxResult me = System.Windows.MessageBox.Show(
                    msg, "Percorso inesistente", MessageBoxButton.OK,
                    MessageBoxImage.Question, MessageBoxResult.No, System.Windows.MessageBoxOptions.RightAlign);
                Globals.log.Warn(msg);
                return;
            }
            List <Programma> programmi = new List <Programma>();

            if (File.Exists(originFile))
            {
                StreamReader objReader = new StreamReader(originFile);
                do
                {
                    string num = objReader.ReadLine();
                    objReader.Peek();
                    string nome = objReader.ReadLine();
                    objReader.Peek();
                    string utente = objReader.ReadLine();
                    objReader.Peek();
                    string pwd = objReader.ReadLine();
                    objReader.Peek();
                    string data = objReader.ReadLine();
                    objReader.Peek();
                    if (nome.Equals(".") && utente.Equals(".") && pwd.Equals(".") && data.Equals("."))
                    {
                        break;
                    }
                    Programma prog = new Programma(Int32.Parse(num), nome, data, ".", false, utente, pwd, ".", false);
                    programmi.Add(prog);
                } while (objReader.Peek() != -1);
                objReader.Close();
            }
            string[] lines = new string[programmi.Count];
            int      i     = 0;

            foreach (Programma p in programmi)
            {
                lines[i] = p.numero + "," + p.nome + "," + p.dataCreazione + "," + p.dataModifica
                           + "," + p.obsoleto + "," + p.nomeUtente + "," + p.password + "," + p.descrizione + "," + p.presenzaCartella;
                i++;
            }
            try
            {
                File.WriteAllLines(destFile, lines);
                System.Windows.MessageBox.Show("Convertito TXT da " + originFile + " a " + destFile, "TXT convertito", MessageBoxButton.OK,
                                               MessageBoxImage.Information, MessageBoxResult.No, System.Windows.MessageBoxOptions.RightAlign);
                Globals.log.Info("Convertito TXT da " + originFile + " a " + destFile);
            }
            catch (IOException)
            {
                string msg = "E18 - errore nella conversione file";
                System.Windows.MessageBox.Show(msg, "E18", MessageBoxButton.OK,
                                               MessageBoxImage.Error, MessageBoxResult.No, System.Windows.MessageBoxOptions.RightAlign);
                Globals.log.Error(msg);
            }
            this.Close();
        }