WPF Controllare se una finestra è già aperta

Il problema che a volte si pone è quello di identificare se una finestra è già aperta per evitare di aprirla nuovamente: in caso di finestra già aperta, si provvederà a rivisualizzarla, portandola in primo piano ed eventualmente passando i parametri ed invocando i metodi necessari. In caso di finestra chiusa, semplicemente si richimaerà il metodo Show(). Innanzitutto  creiamo un modulo che effettui il controllo sulla finestra aperta restituendo un booleano: public static bool IsWindowOpen<...
Di più

WPF : come sapere se una finestra è già aperta

In WPF vi è una raccolta di finestre (Windows) nella classe Application, per cui si può creare un metodo di supporto per controllare se la finestra è aperta. Questo snippet controlla se è aperta una finestra di un certo tipo o con un certo nome, o entrambi. public static bool IsWindowOpen < T >( string name = "" ) where T : Window { return string . IsNullOrEmpty ( name ) ? Application . Current . Windows . OfType < T >(). Any () : Application . Current . Windows . OfType &l...
Di più

Clonare i dati in una classe che eredita da Models Entities

Usando modelli quali collegamento dati ad un MSSQL db, capita di implementare delle classi che, ereditando dagli stessi modelli, posseggano la stessa struttura base ed in più aggiungano delle estensioni per migliorare/ottimizzare l'interfaccia passando attraverso MVC. Come applicazione pratica, si supponga di trovarsi nella necessità di avere, nella classe figlia, tutti i dati della classe madre con, in aggiunta, una o più proprietà che raccoglie/ono i dati di una o più colonne per visualizza...
Di più

WPF – Combobox con binding a database e visualizzazione multicampi

Molto spesso capita di dover utilizzare all'interno di una maschera con un binding su una tabella (tipo TabAcquisti) una combobox con dei dati presenti in una tabella collegata (ad esempioTabClienti), ove la necessità è quella di includere all'interno della visualizzazione più colonne (per esempio 'Cognome Nome') mantenendo l'ID collegato ad un campo della tabella a cui è collegata la maschera. Per fare ciò, mi sono avvalso del seguente codice: <Window.Resources> ... <Collect...
Di più