WPF
WPF
Qualche settimana fa è stata presentata a Londra, durante l'evento Designertopia, la nuovissima (e ancora incompleta) suite Microsoft Expression, composta da quattro strumenti: Expression Web: per la creazione di siti web (ricordate Frontpage? Bene, questo è meglio ) Expression Design: un comodissimo tool per lavorare con grafica vettoriale. Expression Blend: lo strumento più comodo e veloce per lavorare con le interfacce grafiche delle applicazioni WPF Expression Media: uno strumento per il post-editing e l'authoriting di contenuti multimediali A parte Expression Web, gli altri sono tool giovani, in Beta 1/2 o CTP...ma è previsto il loro rilascio entro la fine dell'anno....
Le Spline sono curve controllate dai punti di controllo: usando WPF è immediato disegnare una spline definendone i punti di controllo associati.
E' leggermente più complicato invece disegnare una Spline partendo dai punti per cui la curva deve passare. In questo caso è sufficiente utilizzare l'algoritmo di interpolazione Catmull-Rom, così definito:
Let c(i) be the points you wish to interpolate through. Let b(i) be the Bezier control points. Then:
B(0) = c(i)
B(1) = (c(i+1)-c(i-1))/6 + c(i)
B(2) = (c(i)-c(i+2))/6 + c(i+1)
B(3) = c(i+1)
Note that the very first or very last interpolation point won’t actually be interpolated. You can work around...
WPF mette a disposizione un framework potentissimo per lavorare con oggetti e animazioni 3D. Noterete tuttavia che man mano che le interfacce si fanno più complesse, le performance dell'applicazione tendono a decadere velocemente.
Ecco quindi solo uno dei tip per accellerare l'esecuzione di oggetti tridimensionali. Supponiamo che abbiate una superficie (piano, sfera, quello che volete :)) tridimensionale e che vogliate applicare su di essa un VisualBrush.
La strada più semplice e veloce è quella di decorare il materiale della superficie con un VisualBrush, la cui Visual può puntare a un oggetto 2D o un oggetto creato a runtime: questo approccio tuttavia...
Sono stati rilasciati (in versione 1.0) i 3D Tools per Windows Presentation Foundation. Si tratta di una collezione di tools ed helper che semplificano enormemente la vita degli sviluppatori WPF. Merita una particolare menzione la funzionalità di mapping 2D-3D, che risolve il problema dell'interazione bidimensionale con un ambiente tridimensionale utilizzando una implementazione del ModelVisual3D che associa ad ogni suo nodo 2D un oggetto 3D su cui applica poi dei "Virtual Hit" in fase di rendering...insomma...fa tutto lui! Trovate i sorgenti su Codeplex.
Su segnalazione di Urs Müller, vi rigiro il link di UniveRSS, una applicazione semplice scritta con WPF che mostra alcune delle potenzialità del nuovo framework: 3D animation, data binding, rss, ... http://www.microsoft.com/emea/msdn/thepanel/featured/universs.aspx I sorgenti saranno disponibili con la versione 1.0.
In attesa di un progetto da sviluppare, descrivo brevemente alcuni aspetti chiave di WPF. XAML. Cos'è? E' un linguaggio per descrivere gli oggetti. La programmazione dell'interfaccia è simile a quella di una pagina web. Una finestra Window1 è composta dai file: Window1.xaml: descrive gli oggetti con codice xaml Window1.xaml.cs: codice della pagina Tutto quanto è fatto con xaml può essere fatto anche esclusivamente da codice. Non vale il contrario ovviamente. Un progetto nuovo si presenta così: <Window x:Class="Progetto.Window1"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Title="Progetto" Height="300" Width="300"><Grid></Grid></Window> Si tratta di una finestra contenente una griglia vuota: se siete abituati alla programmazione su Asp (A LIVELLO SINTATTICO) fin...
Premesso che non mi pare una saggia idea fare un corso completo di WPF utilizzando come strumento questo blog...cercherò da qui in poi di toccare alcuni argomenti "teorici" che ritengo interessanti (partendo dai più semplici e arrivando ai più complessi) attraverso lo sviluppo from scratch di una applicazione pratica. LA domanda è: che applicazione? Ho già in mente qualcosa...ma aspetto qualche giorno nel caso in cui vogliate darmi qualche idea o spunto o richiesta o o o... Fatevi sentire! :)
Da cosa iniziare se non dal sistema operativo? Presi dalla voglia di "fare i pionieri", di voler dare una svolta alla propria esperienza, di voler cambiare look al proprio monitor...viene subito voglia di approfittare della situazione per installare Windows Vista Beta 2.Bene: non posso dire non fatelo però... non fatelo :)Io ho già ammesso di averlo fatto...e purtroppo mi sono reso conto di non aver preso una decisione ottimale... Windows Vista Beta 2 è un buon sistema operativo, ma è in BETA. Non tutto funziona ancora perfettamente. Non tutti i produttori HW hanno rilasciato i driver aggiornati. Non tutti i prodotti sono già...
Negli ultimi mesi ho avuto il piacere di lavorare a un progetto per il concorso Imagine Cup. Ho sviluppato un paio di applicazioni che fanno uso di molte tecnologie interessanti, in particolare: WPF WCF Sidebar Gadget VSTO .... Sulla scia di Corrado, mi piacerebbe scrivere qualche post riguardo XAML e raccontarvi la mia esperienza (positiva e negativa) con Windows Presentation Foundation aka Avalon. Come Raffaele ha perfettamente scritto, la curva di apprendimento è abbastanza ostica, soprattutto se si considera che il framework .Net 3.0 è ancora in fase di BETA. Tuttavia sono sicuro che chiunque dotato...
To solve the problem you need to compile your assembly in the Bin folder of the WebApplication (bin\debug or bin\release are not valid folder). If you're using Visual Studio you can config the output folder by the project properties, in the BUILD tag.
Server Error in '/HWWebService' Application.
The type 'Sardo.Giorgio.ServiceName', provided as the Service attribute value in the ServiceHost directive could not be found. Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.InvalidOperationException: The...
Tempo fa mi sono imbattuto nel problema working with threads nelle applicazioni WPF.
Vi consiglio di dare un'occhiata alla classe
System.Windows.Threading.DispatcherTimer
la quale vi permette di avere un Timer asincrono che può andare a modificare anche l'UI. Molto simile al BackgroundWorker del Framework 2.0.
NOTA: non esiste ancora la relativa documentazione sull'Msdn Library...
Somasegar ha da poco annunciato nel suo blog che WinFX verrà rinominato in .Net Framework 3.0. Esso racchiuderà tutte le potenzialità del vecchio framework (Windows Forms, Web Forms, ADO, ...) ma anche le novità di WinFx(WPF, WCF, WF, WCS...).
Cito dal blog di Jason Zander:..."Il CLR sarà lo stesso, ovvero il Framework 3.0 userà i compilatori del framework 2.0. Linq non sarà ancora supportato e verrà introdotto dalla build successiva. Il framework verrà inserito in una nuova directory ...\Microsoft.NET\Framework\V3.0"...
Ecco cosa è riuscito a fare il Random...
Random r = new Random();
Brush coloreRandom = new LinearGradientBrush(Color.FromArgb((byte)255, (byte)(r.Next(0, 255)), (byte)(r.Next(0, 255)), (byte)(r.Next(0, 255))), Color.FromArgb((byte)1, (byte)(r.Next(0, 255)), (byte)(r.Next(0, 255)), (byte)(r.Next(0, 255))), 45);
Nelle ultime settimane ho iniziato a giocare con la February CTP di Windows Presentation Foundation. E' senza dubbio un framework che offrirà in futuro n-mila nuove features e potenzialità, ma ORA è ancora un colabrodo. Anzi, non funziona neanche come colapasta... :)
Ecco un paio di TIP (del tutto personali) che sicuramente vi saranno utili se avete intenzione di lavorarci un po'.1) Molte eccezioni (intendo quelle dell'ambiente di sviluppo Visual Studio) non sono ancora state catchate: il risultato è che ogni qualvoltà c'è un errore "grave", Visual Studio vi ringrazia per l'attenzione, manda a Redmond il report errori, e si riavvia. FIX: Per...