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
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ù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ù