Tag: UserControl
Qualche giorno fa, ero in ferie e ovviamente pioveva a dirotto, così ho deciso di fare una piccola applicazione che serve a me e ai miei colleghi in ufficio visto che lavoriamo quasi esclusivamente con aziende estere e più o meno tutte sono su fusi orari diversi dal nostro. Mentre sviluppavo la piccola applicazione che mi sono immaginata, mi sono resa conto che pure essendo semplice, potrebbe essere didatticamente interessante, pertanto, invece di farla divenire un progetto aziendale, l’ho fatta divenire un progetto DotNetwork, e la costruirò usando questo articolo, poi la modificherò aggiungendo nuove funzionalità e spiegando varie cose in alcuni articoli successivi.
L’applicazione verrà sviluppata in MVVM basico, cercando di far comprendere i concetti fondamentali del Binding e facendo vedere a chi si approccia alla programmazione C# XAML che non è difficile, che è potente e davvero ottima per creare applicazioni desktop.
La User Story
Partiamo indicando quali sono le richieste dei “clienti” in questo caso io e i miei colleghi. Spesso, ci troviamo ad organizzare video conferenze con i nostri clienti che si trovano su fuso orario diverso, pertanto se prima di chiamarli possiamo sapere che ore sono a casa loro evitiamo di svegliarli alle quattro del mattino, o di chiamarli mentre sono a pranzo o a cena. Per farlo, ci serve avere un orologio che possa mostrare l’ora di un diverso fuso orario. Ovviamente, l’appetito vien mangiando e la richiesta è divenuta, “Ma non potremmo avere un applicazione con una serie di orologi?”. Pertanto la storia è la seguente:
“Vorremmo un applicazione che ci mostri l’ora locale e l’ora di almeno due o tre diversi fusi orari, quelli che usiamo più spesso così è facile sapere come schedulare video conferenze, telefonate e anche appuntamenti.”
Comments closedFacciamo il fine tuning dello User Control disegnato nel post precedente a questo e disponibile QUI in questo articolo modificheremo le semplici textbox inserite per il primo test e aggiungeremo un DateTimePicker per la data della prossima esecuzione del Job, un DateTimeUpDown per l’ora della prossima esecuzione del job, in IntegerUpDown per la gestione dell’intervallo di esecuzione ed una combobox per selezionare le connessioni disponibili sul sistema per l’esecuzione dei job. Per fornire la lista alla combobox aggiungiamo ai parametri di configurazione del servizio e della sua console un file che conterrà tutte le stringhe di connessione valide a SQL Server che vogliamo memorizzare.
Comments closedIn questo post, proseguiamo lo sviluppo della console per il servizio MiniSqlAgent che stiamo sviluppando per dimostrare come costruire un servizio windows funzionante e non banale ed una applicazione WPF che ne gestisca l’amministrazione in tutti i suoi aspetti. Nel post precedente abbiamo generato una classe per definire un Job per il nostro servizio che contiene funzionalità minimali, adesso realizziamo uno User Control WPF per poter generare un Job e salvarlo su un file su disco, e testeremo lo User Control nella applicazione della nostra console.
Comments closedIn questo ultimo post della serie esploreremo un progetto di test che utilizza il nostro User Control in un caso d’uso reale.
Comments closedIn questo sesto post ci occupiamo di tutto il Code Behind dello User Control e quindi della logica di gestione dei dati e dei servizi che il controllo mette a disposizione delle applicazioni che lo useranno.
Comments closedIn questo sesto post ci occupiamo di tutto il Code Behind dello User Control e quindi della logica di gestione dei dati e dei servizi che il controllo mette a disposizione delle applicazioni che lo useranno.
Comments closedIn questo quarto post vedremo l’implementazione del Menu del nostro User Control e i vari tipi di Binding ai dati o funzionale che utilizzeremo per rendere interattiva l’interfaccia utente.
Comments closedIn questo terzo post della serie dedicata agli user control WPF parleremo di alcune differenze fondamentali fra WPF e Windows Forms e inizieremo a creare le classi per il nostro User control.
Comments closedIn questo secondo post di questa breve serie facciamo un po’ di fondamenta, riepiloghiamo e aggiorniamo le classi per la gestione dei dati e l’helper per la crittografia e creiamo i due nuovi progetti per le nostre librerie di base.
Comments closed