Sostituire la classe Program.cs con App.xaml

by Administrator 28. settembre 2016 18:13
C#, WPF, Visual Studio 2010, Visual Studio 2015. Project .Net [Prosegue]

Tags: , , ,

.Net | Visual Studio | WPF

My project on Codeplex

by Administrator 14. luglio 2012 23:50
è on-line il mio primo progetto su CodePlex. Spero che serva a qualcuno.   http://crashreporterwpfnet.codeplex.com/

Tags: , , ,

Localization WPF

by Administrator 19. maggio 2012 07:35
Buongiorno a tutti. In questi giorni ho dovuto fare un programma Localizzato sia in Italiano che in Inglese. Ho visto questa bella DLL che fa proprio al caso mio: http://wpflocalizeextension.codeplex.com/ La cosa bella di questa DLL è la semplicità d'uso e la sua efficacia molto sorprendente. L'uso di questa DLL è molto semplice: dopo aver scaricato la dll dal link di download, aggingietela ai Reference del vostro progetto. Aggiungete al vostro progetto un file di risorse (io l'ho chiamato "Language.resx") e inseriteci alcuni valori come di seguito: Button_ExitButton_CloseButton_Open In questo file di risorse non servono i valori per ogni "Stringa" dato che questi servono al sistema, per prelevare i valori dai file della lingua selezionata. Per esempio, per il Button "btnExit" della Window, il sistema andrà a prendere dal file di lingua il valore del campo @Button_Exit. A questo punto aggiungete altri file di risorse con lo stesso nome della prima aggingendi il prefisso della Lingua da includere nel vostro programma: io ho aggiunto Language.it-IT.resx e Language.en-US.resx. In questi file aggiungete le stesse stringhe del file Language.resx aggiungendo il valore appropriato della lingua del file: Per il file it-IT:Button_Exit - EsciButton_Close - ChiudiButton_Open - Apri per il file en-US:Button_Exit - ExitButton_Close - CloseButton_Open - Open Ora andiamo nel file XAML: ipotizziamo di voler impostare la lingua di un Menù della nostra window. Per prima cosa importiamo la nostra dll.Nello stesso punto possiamo impostare la lingua da usare durante lo sviluppo del nostro programma. Questo funziona sia in Visual Studio chein Blend.  mlns:Engine="clr-namespace:WPFLocalizeExtension.Engine;assembly=WPFLocalizeExtension" Engine:LocalizeDictionary.DesignCulture="en-GB" xmlns:lex="clr-namespace:WPFLocalizeExtension.Extensions;assembly=WPFLocalizeExtension"  Ora andiamo nel nostro menù ed inseriamo un MenuItem con il codice appropriato per poterlo visualizzarlo con la lingua selezionata:  <MenuItem Header="{lex:LocTextExtension Assembly=NameOfYourAssembly, Dict=Language, Key=Button_Exit}" Click="mnuBtnClick" > Qui ho messo il solo MenuItem per il metodo Exit..La stessa cosa si può fare con gli altri metodi cambiando la sola Key.Naturalmente cambiate "NameOfYourAssembly" con il nome del vostro assembly. Andiamo ora nel codice nel costruttore della Window: string mLingua; public MainWindow() { InitializeComponent(); mLingua = "it-IT"; LocalizeDictionary.Instance.Culture = CultureInfo.GetCultureInfo(mLingua); } in questo modo impostiamo la lingua Italiana in modo che venga mostrata all'avvio della nostra Window. Per cambiare lingua a runtime basta cambiare il valore della variabile ed impostarlo nuovamente: private void BtnCambiaLinguaClick(object sender, RoutedEventArgs e) { if (mLingua == "it-IT") { mLingua = "en-US"; } else { mLingua = "it-IT"; } LocalizeDictionary.Instance.Culture = CultureInfo.GetCultureInfo(mLingua); } Qui trovate una lista delle varie Culture: Spero che questo post possa servire a qualcuno che come me s'è trovato a dover affrontare questo problemino.  

Tags: , ,

.Net | WPF

Aprire WPF Window da WinForms

by Administrator 7. maggio 2012 10:14
Se vi capita, come è successo a me, di fare una Dll per un vostro programma ma volete inserire al posto del classico WinForm, una Window di WPF, potete facilmente farlo così: Al posto della classica DLL, create una “Libreia di Controlli Utente WPF”. al suo interno inserite una “Finestra WPF (Window)”. dopo aver compilato (nel mio pc registro la dll in GAC. andiamo nel progetto WinForm e dopo aver importato nei riferimenti la dll WPF e la DLL PresentationFramework, importando lo spazio dei nomi “System.Windows.Forms.Integration” nella Form dove si trova il Button che aprirà la Window WPF.. Andiamo nell’evento Click del Button che dovrà richiamare la nostra Window e scriviamo questo: Dim wpfwindow As New WPFWindow.Window1 ElementHost.EnableModelessKeyboardInterop(wpfwindow ) wpfwindow .Show() Provate e vedrete la Window aprirsi nella vostra applicazione WinForm.. Ottimo modo per entrare pin piano in questo fantastico mondo WPF. Un grazie a Alessandro Del Sole per la dritta sul “ElementHost”.  

Tags: , ,

.Net | WinForm | WPF

Disattivare il caricamento automatico dei Controlli in Toolbox in WPF

by Administrator 6. maggio 2012 09:45
Tra le tante funzionalità di Visual Studio, c'è quella che aggiunge automaticamente nella ToolBox di Visual Studio, i vari Components creati nella soluzione. Questo "problema" (io lo chiamo problema perchè me ne inserisce moltissime) si aveva già ai tempi di WinForm e la simpatica Sabrina C. ci aveva svelato come risolvere questo "problema" in questo suo post: http://community.dotnetwork.it/sabrina/archive/2009/03/30/disattivare-il-caricamento-automatico-dei-controlli-in-toolbox.aspx Purtroppo anche disattivando questa opzione, andando a lavorare in WPF, il problema rimane. Questa è la soluzione che lo risolve in WPF: Andate nelle opzioni di Visual Studio Tools/Options/Text Editor/XAML/Miscellaneous e disabilitate la voce "Automatically populate toolbox items"; riavviate Visual Studio ed il vostro ToolBox sarà nuovamente pulito.   Senza lavorare su questa opzione, è possibile scavalcarlo semplicemente decorando i vostri component con il System.ComponentModel.DesignTimeVisibleAttribute. In questo modo avrete la possiblità di specificare se farlo apparire o no, nella finestra di progettazione. Buon divertimento.

Tags: , , ,

.Net | WPF

Info sull'Autore

Pranzo Stefano

.Net Developer

Month List

Page List