Visual Studio Tips & Tricks : SI PARTE!!!

La nostra neonata community Visual Studio Tips & Tricks parte alla grande.

Il prossimo Sabato 25 Marzo, presso il Garda Hotel di Montichiari (Brescia), si terrà il nostro primo evento pubblico, Visual Studio 2017 to the max. Sarà una delle prime occasioni per vedere dal vivo la versione RTM del prossimo Visual Studio. Nel mio caso vi parlerò un pochino di Universal Windows Platform, mentre gli altri speaker tratteranno di IDE, Entity Framework Core e di Cognitive Services.

Trovate maggiori informazioni sulla news ufficiale pubblicata all’indirizzo http://www.visualstudiotips.net/view/ArticleId/35/Visual-Studio-to-the-max.

Chiaramente l’evento è totalmente gratuito!!! Partecipate!!!!

L’iscrizione si sono aperte questa mattina, abbiamo tanti posti ma chiaramente la quantità è limitata.

Non perdete tempo, iscrivetevi e veniteci a trovare!

Send to Kindle

Documentazione UWP in formato PDF

E se vi dicessi che ci sono 5133 pagine di documentazione su UWP che vi stanno aspettando?

Mi è capitato sottomano un tweet, oggi, parecchio interessante.

You can download all Windows UWP docs in PDF form.

Ero già al corrente del fatto che la documentazione ufficiale UWP fosse stata spostata sul nuovo portale, ma onestamente questa news del formato PDF mi era proprio sfuggita. Detto questo, è sufficiente per esempio raggiungere l’url https://docs.microsoft.com/en-us/windows/uwp/get-started/your-first-app ed effettivamente in basso a destra c’è un bel link:

image

Cliccando il link, parte il download del file PDF. Se lo si fa con Edge, il download sembra che abbia qualcosa che non vada: appare il tradizionale viewer dei PDF, sembra che non stia scaricando nulla. L’ho fatto con Chrome e la cosa va un po’ meglio: c’è una progress-bar che mostra chiaramente il download in corso.

L’unico problema?
Il file pesa 54,5Mb, e comprende ben 5133 pagine di documentazione.
Buona lettura!

Send to Kindle

Toner per stampanti laser

Siamo giunti nuovamente alla situazione, che si ripete puntualmente ogni “qualche anno”, secondo la quale conviene acquistare una stampante nuova rispetto all’acquisto di un toner originale.

A casa ho una stampante laser Samsung M2022W. Dovrei acquistare un toner nuovo originale (di quelli compatibili non mi sono mai fidato): su Amazon c’è giustamente un solo prodotto, che sarebbe questo. Costo : 48,06 euro. Peccato che la stampante stia andando un po’ fuori dai prodotti normalmente accessibili nelle catene (ad esempio Mediaworld), e quindi sarà sempre più difficile trovare il toner giusto non solo fisicamente nei negozi, ma probabilmente anche online. Sapete quanto costa il modello più recente Samsung? Il modello è il M2026W. Costo : 68,90. Certo, è comunque maggiore rispetto ai 48 di prima, ma se mettiamo sul piatto della bilancia la reperibilità dei materiali di consumo…forse conviene quest’ultimo, anche magari per avere driver più efficienti, ed un hardware più recente (magari anche compatibile con gli smartphone Android).

Voi che dite?

Send to Kindle

Nasce una nuova community: Visual Studio Tips & Tricks

Oggi, lunedì 20 febbraio 2017, abbiamo il piacere di annunciare la nascita di una nuova community tecnica chiamata Visual Studio Tips & Tricks.

image

Il nome è certamente e volutamente evocativo, ma questa community non è assolutamente un’estensione di Visual Basic Tips & Tricks.

E’ una realtà totalmente nuova, autonoma e piena di freschezza, che ha lo scopo di divulgare conoscenza sulle tecnologie Microsoft per lo sviluppo di software ad ampio raggio, negli ambiti Mobile, Desktop, Cloud con l’ecosistema di Microsoft Visual Studio, inclusi Visual Studio Code e Visual Studio for Mac.

Ciò vuol dire che ci occuperemo massicciamente di cose come Xamarin, Azure, intelligenza artificiale, Visual Studio Code, Roslyn, .NET Core, di Universal Windows Platform, di DevOps e Visual Studio Team Services, dei linguaggi .NET senza distinzione e di tutto ciò che può ruotare allo sviluppo di software con gli strumenti della famiglia Visual Studio.

Siamo già abituati a trattare tutti questi argomenti ma serviva uno spazio più adeguato, per noi stessi e per gli utenti che hanno avuto “timore” ad avvicinarsi a un sito il cui nome è legato a un linguaggio storico ma il cui uso è statisticamente ben circostanziato.

Il Team di questa nuova community è composto da Alessandro Del Sole, Renato Marzaro, Laura La Manna, Antonio Catucci e Igor Damiani. Persone abbastanza note nel mondo delle community Microsoft per la loro grande passione non solo per la tecnologia ma anche per la condivisione della conoscenza e legate tra loro da amicizie durature.
Il sito Web di questa community offre, gratuitamente, un’Area Articoli che già contiene numerosi articoli tecnici pronti per voi su argomenti come Xamarin, UWP e C# 7. C’è inoltre un’area dedicata a forum tecnici organizzati per area tematica nei quali potremo porre i nostri quesiti e rispondere a domande degli altri utenti.

In cantiere ci sono anche diversi eventi che erogheremo in diverse città italiane in modo da poterci incontrare di persona e di condividere più da vicino la nostra passione con tutti voi.
Abbiamo inoltre creato un canale di community su YouTube dove pubblicheremo i nostri video tecnici e dove già ne trovate alcuni dedicati a Xamrin, Roslyn e Visual Studio for Mac.
Non potevamo inoltre mancare sui più diffusi social network, pertanto abbiamo creato:
•    una pagina Facebook su cui potrete seguire novità di community e dal mondo dello sviluppo;
•    un account su Twitter;
•    un profilo Instagram che useremo non solo per occasioni di community ma anche per darvi flash visivi su alcuni contenuti.
La community è appena nata, quindi sicuramente ci saranno molti aggiustamenti da fare col tempo ma saremo felici se vorrete darci i vostri feedback.
Da parte del sottoscritto, due parole su VB T&T: continuerà a vivere e sarà supportata. La velocità con cui si muove la tecnologia e la direzione presa dal mondo dello sviluppo, ad ogni modo, ci porterà ad investire la maggior parte delle risorse e del tempo sulla nuova Visual Studio Tips & Tricks. Un motivo in più per visitare il nuovo sito e seguirci.
Come sempre, qualunque comunità non ha senso se non c’è la partecipazione e l’aggregazione delle persone. Quindi, i vostri contributi come articoli, partecipazione nei forum o video formativi saranno più che benvenuti.

Vi aspettiamo!

Send to Kindle

San Valentino in trasferta

Esci dal cliente alle 17:30, prendi il pullman che ti riporta in hotel. Entri in camera, metti sotto carica il cellulare, ti rilassi un’oretta, poi esci per cena. Sei solo, in trasferta, e realizzi solo ora che è la sera di San Valentino. Cosa significa questo?

Significa che tutti i ristoranti hanno solo tavolini per due, sono tutti prenotati, hanno tutti un cuoricino come addobbo. Sei in città, gironzoli a vuoto per il centro storico, serpeggiando per viuzze strette e larghe. Cominci ad optare per una piadineria, per una rosticceria qualsiasi, alla ricerca di un trancio di pizza o qualcosa di simile. Ti fai aiutare da Trip Advisor e da Google Maps. Tu passeggi solo sempre più affamato, mentre pian piano arriva l’ora delle coppiette che raggiungono il loro tavolino nel ristorante in cui hanno prenotato per questa sera (speciale?). Le vedi arrivare verso di te: lui e lei che si tengono stretti, le ragazze tutte vestite carine, i ragazzi tutti bellocci. Le ragazze con gonnelline svolazzanti o pantaloni neri lunghi. I ragazzi con cappotti col bavero alzato. Le ragazze truccate alla perfezione. I ragazzi con tutti i capelli ben pettinati. Tacchi e mocassini.

E a te manca lei, che è a centinaia di chilometri di distanza. E faresti carte false per averla lì con te. Per poterla baciare, abbracciare, per poter sentire la sua voce o la sua risata. Ed invece non c’è, se non nel tuo cuore. Ma non basta. Passeggi e cammini. Passi davanti a piadinerie e rosticcerie che ci sono, ma che sono deserte, comprese le teglie che dovrebbero invece ospitare tranci di pizze margherite o piadine con fontina e prosciutto. Tiri dritto, e ritorni pian piano verso il tuo hotel.

Ed eccolo lì, a poche decine di metri, il posto che cercavi. Una pizzeria da asporto aperta, illuminata, piena di gente come te che la sera di questo San Valentino è in trasferta, è in una città che non è la sua. Entri, ordini qualcosa, bevi una coca. Sei pieno e sazio. Il tuo stomaco è pieno e sazio, solo quello. Il tuo cuore rimane triste e solo, ma non ci puoi fare nulla.

Ciao San Valentino, all’anno prossimo!!

Send to Kindle

Il conato di vomito dei social network

I social network stanno fallendo su tutti i fronti. Lasciate che vi faccia un riassunto di tante piccole storielle, che probabilmente tutti voi avete sentito, oppure no.

Da una parte c’è il professor Roberto Burioni, che lotta tutti i giorni contro i movimenti anti-vaccinisti, con tutte le polemiche del caso. E’ di qualche giorno fa la notizia che un suo post su Facebook è stato bannato, probabilmente segnalato in massa da un gruppo di persone per i suoi contenuti. Facebook ovviamente non può mettersi a leggere tutti i post che vengono pubblicati ogni secondo, per cui va per numero: se un post viene segnalato da un po’ di persone, viene automaticamente rimosso. Pazzesco. Peccato che dopo un certo numero di post rimossi, probabilmente potrebbe venir bloccato l’intero account.

Da un’altra parte c’è l’inevitabile esito di ogni discussione sui social. Indipendentemente dall’argomento (referendum del 4 dicembre, l’ultimo film di Star Wars, la marca degli hard-disk che compriamo, una ricetta, un qualsiasi evento sportivo, etc.), inevitabilmente la discussione degenera, va oltre i propri confini, diventa quella che io definisco – anche nella mia vita privata – una gara di scherma. Dove devi stare attento a come ti muovi, sennò il tuo interlocutore ti tocca facendo punto, e tu a tua volta devi usare sarcasmo/sagacia/cattiveria per segnare il tuo punto. Bleah. La litigata avviene sempre, per argomenti futili ed argomenti più complessi. Ognuno crede di sapere la verità, compreso me. In base all’argomento, ognuno ha nel proprio passato inevitabilmente condotto la propria battaglia contro i suoi mulini a vento. Un redattore di The Games Machine è stato insultato per aver scritto un articolo contro la pirateria dei videogiochi. Io mi sono preso del razzista, dell’immaturo, dell’idiota, tra l’altro da persone che mai e poi mai si permetterebbero di dire quelle cose dal vivo. Quelle stesse persone, dal vivo, sono squisite, molto più intelligenti e preparate di me, verso le quali nutro sincero rispetto. E’ lo strumento social che le trasforma, così come trasforma me.

Altro? Ogni giorno, grazie ai social, ci sono vittime di cyberbullismo. E, per favore, non fate paragoni con il bullismo tradizionale che esisteva 25 o 30 anni fa. Una volta quando avevi a che fare con il bullo della tua scuola, era una faccenda tra te e lui. Il più delle volte, tra te ed un gruppo di bulli. Alla fine uno aveva la meglio, o la peggio, ma la cosa era comunque circoscritta. Oggi tutto viene ripreso in diretta, filmato, buttato su Whatsapp, su Facebook. E la vittima è segnata a vita. Ci sono storie recenti di ragazzi e ragazze che si sono suicidate, per ragioni di questo tipo. Se sottovalutate il cyberbullismo odierno al grido di “il bullismo c’è sempre stato” manifestate una certa ignoranza, e comunque un certo distacco dal mondo non solo giovanile di oggi.

Di nuovo: è notizia di qualche giorno fa che Twitter vuole dare la caccia e chiudere gli account fake. Tanti di questi account sono simpatici, divertenti, irriverenti. Ma non è semplicemente una cosa giusta che ci siano. Dietro all’anonimato si nascondono anche insidie e pericoli. Ci siamo costruiti (mi ci metto in mezzo) un mondo digitale basato sull’anonimato, che oggi però è più pericoloso che altro. No: se tu vuoi stare in Rete, devi farlo con il tuo nome & cognome. E’ finita la pacchia. Vi rendete sì o no conto che l’elezione di Trump – solo per citare un fatto recente – potrebbe essere stata favorita dalla diffusione di notizie fake populiste? Se non è pericolo questo…non riesco a capire cosa possa esserlo.

E facciamo un altro esempio. Conoscete tutti Charlie Hebdo, il noto periodico settimanale satirico francese, venuto un po’ alla ribalta per gli attentati del Gennaio 2015; il loro account Twitter è @Charlie_Hebdo_. Capita a volte che facciano vignette anche dedicate a qualche evento italiano (il recente terremoto, per esempio). Supponiamo che 1.000 italiani si mettano a segnalare a Twitter che quell’account vada chiuso perchè offende, è fuori luogo, è offensivo. Cosa fa Twitter? Probabilmente, ed automaticamente, chiuderebbe o sospenderebbe l’account, esattamente come ha fatto Facebook con il post del professor Burioni. Vi sembra corretto? Io una mia risposta ce l’ho, ma mi piacerebbe che anche voi ci pensaste un attimino.

Un altro gravissimo aspetto è che sempre più l’informazione giornalistica viene veicolata attraverso i social. Politica, attualità, scienza, medicina, tutto il resto. Un giorno, mentre ero in auto, su Radio 24 hanno detto che sempre più italiani utilizzano i social per informarsi. Ed è una cosa incredibile. Attenzione, faccio un mea-culpa: anche io ho utilizzato i social (Facebook) per fare informazione, nel mio piccolo. Questo per dire che non è colpa di qualcuno di preciso, è colpa di tutti, è colpa dell’andazzo delle cose, è colpa dell’invasività di questi strumenti. Da una parte c’è sì il grande vantaggio dell’enorme visibilità, ma dall’altra c’è la grande carenza di distinguere tra il vero ed il falso, c’è il problema delle discussioni, c’è tutto quello che ho descritto prima che non funziona. Ognuno di noi concepisce la partecipazione sui social in modo differente: c’è chi lo prende per un gioco, c’è chi lo prende per qualcosa di più serio. C’è chi lo utilizza come strumento di indignazione (della durata di 10 minuti), e c’è invece chi lo utilizza per le proprie campagne di sensibilizzazione.

Un problema insito nei social è che c’è una probabilità altissima di parlare con persone del tutto ignote, dall’altra parte d’Italia se non del mondo. Persone di cui non si conosce nulla: il contesto in cui vivono, che lavoro fanno, come ragionano, chi sono e chi non sono. E spesso ci si prende il diritto di giudicarle, di parlare con loro come se fossero vicini di casa, mentre in realtà non è affatto così. Per citare il mio amico Marco, socio di Piloti Virtuali ItalianiIl problema, Igor, è che fin dall’inizio dell’era social, da Intranet fino a Facebook, le persone non possono essere coscienti degli stati d’animo e del contesto in cui vivono le altre persone. Per cui è molto facile vedere in maniera negativa o offensiva una risposta, quando di tutto ciò, in realtà, non vi è traccia. Questo genera fraintendimenti incomprensibili da entrambe le parti. Quindi, il lato sociale prende punti da una parte per perderne dall’altra. Il futuro ci aiuterà… Oppure preferiremo regredire.“. Quoto totalmente questa osservazione.

Spesso sento che per migliorare le cose è sufficiente educare le persone. E’ sicuramente la strada più giusta, ma è anche la più utopica. E’ giusto che nel mondo ci siano persone colte e meno colte, persone che hanno voglia di imparare ed altre no, persone che hanno gusti, ambizioni, modi di fare talmente differenti che sarebbe assurdo costringerle ad essere educate. Sarebbe come chiedere a tutti di essere esperti in ogni cosa. No, cari miei. E’ lo strumento che è sbagliato. Uno strumento che mette sullo stesso piano un premio Nobel ed una persona normale come me non può funzionare. Può essere divertente, finchè è usato per scopi leggeri, ma in generale non funziona. Con i social è come se avessimo a che fare con migliaia, se non milioni di leader, e non credo sia una regola prevista dall’evoluzione della specie. Dovremmo prima metterci tutti d’accordo, concordando ad esempio con il fatto che i social vanno usati in modo leggero, ma non può funzionare, ovviamente.

Detto tutto questo, insomma, è anche giunto il momento, almeno per me, di riappropriarmi dei miei spazi. Per questo motivo ho ricominciato a scrivere sul blog. Perchè mi rilassa, perchè scrivo ciò che mi piace, diffondo ciò che so, nel limite delle mie competenze. E nessuno può decidere di bannare un mio post, mentre un social potrebbe farlo (ed in realtà nel mio caso l’ha fatto, visto che Facebook mi ha sospeso per qualche giorno senza una ragione valida). E il grande vantaggio di un blog è che è meritocratico. Scrivo cose giuste ed interessanti? Ho 1.000.000 di visitatori al giorno. Scrivo stupidaggini, scrivo male, scrivo cose fuori luogo? Avrò 17 visitatori al giorno. E’ giusto che sia così, porca miseria. Sono stufo marcio di un mondo digitale dove la massa ha sempre ragione. Sono un leader? Attirerò seguaci. Scrivo cose dementi, fuori luogo, razziste? E’ giusto che non venga seguito da nessuno. Direte voi: anche sui social succede così. Se questa è la risposta, ripartite a leggere questo post dall’inizio, perchè la risposta è lì. Tutti hanno diritto alla libertà di parola, quella non va negata a nessuno, ma la popolarità te la devi guadagnare, e dipende esclusivamente da ciò che dici. L’ubriacone al bar viene ascoltato da qualche avventore del bar stesso, ma viene bellamente ignorato. Sui social invece esiste un naturale effetto “cassa di risonanza” totalmente a sfavore della realtà, in balia della menzogna facile, urlata più o meno consapevolmente.

Sono giunto alla conclusione che non siamo fatti per dialogare gli uni con gli altri in una cerchia così grande. Dobbiamo modellare i social secondo le migliori convenzioni del mondo reale.

Io, per esempio:

  • non posso entrare in una sala operatoria e mettermi a dialogare di medicina con il chirurgo
  • non posso entrare in un CdA di una grande azienda ed arrogarmi il diritto di sapere come gestire l’azienda, al punto di consigliare o cazziare qua e là in base a quello che credo
  • non posso andare in diretta TV ad urlare le mie idee
  • non posso entrare in tantissimi palazzi pubblici (provincia, regione, altri governativi), semplicemente perchè non ho le credenziali per farlo

Perchè dovrei avere questi diritti sui social? Un mondo che permetta di dialogare a 360°, con la massima e totale libertà, è pura anarchia di comunicazione. Ed è quello che accade sui social.

  • potrei entrare in sala operatoria e dialogare con il chirurgo solo dopo la mia bella laurea di medicina, e dopo anni di apprendistato
  • potrei entrare in un CdA dopo aver ottenuto le giuste credenziali
  • potrei andare in diretta TV solo dopo aver dimostrato di aver qualcuno di giusto e corretto da dire
  • potrei entrare in Parlamento, per esempio, solo dopo essere stato eletto

Esempio sciocco: sono stato per 3 anni nel Direttivo di Piloti Virtuali Italiani. Sono stato ammesso perchè in un’assemblea tenutasi nel gennaio 2014, ho fatto un breve discorso in un hotel, davanti ai soci presenti (circa 80), spiegando quali sarebbero stati i miei scopi ed i miei obiettivi. Si è votato e sono entrato a far parte del Direttivo. Meritocrazia, insomma.

Paradossalmente, i social network che hanno più probabilità di rimanere puliti sono quelli non generalisti, dedicati ad uno scopo ben preciso. Ad esempio, LinkedIn penso che funzioni meglio, per due motivi: siamo meno, ma soprattutto chi frequenta quel social è un professionista, e quindi ci si ritrova fra pari grado. Forse l’idea che c’era dietro Google Plus non era malaccio, ma avendolo usato davvero poco, non posso esprimere un’idea precisa; ma l’idea di fondo di quel social erano le cerchie, che limitavano in qualche modo la visibilità di un post, facendo in modo che una certa discussione coinvolgesse le persone più giuste per quel tipo di argomento. Su Instagram si dialoga per lo più attraverso foto, al massimo qualche commento; e comunque anche qui qualche scandalo c’è stato. Ricordo, se non erro, Bonolis che andava in vacanza in qualche posto lussuoso, oppure Belen che bacia suo figlio in modo un po’ troppo…provocante? Ed anche in quel caso, via con insulti a go go.

Per favore, non paragonate una discussione reale con quella sui social. Quella sui social dura in modo indefinito, coinvolge decine o centinaia di persone, assume toni decisamente più accesi rispetto a quella dal vivo. Non c’è dubbio su questo. Ad una discussione social non viene mai staccata la spina, perchè chiunque può farla ripartire quando si accorge della sua esistenza, in diretta, il giorno dopo o dopo una settimana. E’ invasiva, non si molla mai. E la pressione sale.

La cosa drammatica, secondo me, è che il problema dei social non può essere risolto dai social stessi. Facebook non ha alcun interesse a rimediare ai suoi stessi problemi; a Facebook interessa fatturare, veicolare la pubblicità, raggiungere ogni giorno la quota del miliardo di utenti connessi contemporaneamente. Poco importa, a Facebook come a tutti gli altri, se i contenuti sono litigi, discussioni, minacce, notizie false. Anzi: più gente c’è, per loro, meglio è. Sarete d’accordo con me che così non può andare avanti. C’è bisogno di regole, di ripensare qualcosa.

Adesso, prima di lasciarvi ai vostri commenti, vi linko l’appello che Laura Boldrini (ovviamente insultata più e più volte sui social in modo estremamente sessista e volgare negli ultimi mesi/anni, sebbene sia una persona di cultura che ha lavorato per 25 anni all’ONU) ha rivolto a Facebook, guarda caso, per risolvere il problema.

Buon social a tutti.

Send to Kindle

Visual Studio 2017 esce il prossimo 07/03

Beh, secondo questo post ufficiale Visual Studio 2017 uscirà ufficialmente il prossimo 7 marzo. Sarà un martedì. Quel giorno mi raccomando: scaldate i PC, riavviate i vostri modem per scaricare il più velocemente possibile i file iso per effettuare il setup.

Avrò occasione, qua sul mio blog ed in altre parte del web (ho delle sorprese in merito), di raccontarvi tutte le novità del nostro IDE. Vi parlerò di sviluppo di applicazioni desktop e di applicazioni UWP, di Azure, e di tanto altro ancora, come ormai è consuetudine.

Non mancate l’appuntamento!!!!

Send to Kindle

[Ammy.5] Modifiche a runtime del codice

Il linguaggio Ammy supporta una feature a mio avviso straordinaria, anche se ad oggi presenta dei piccoli bug, già segnalati.

Mentre la vostra applicazione WPF è in running, potete tranquillamente continuare a lavorare sul codice della UI – scritta in Ammy – senza interromperne l’esecuzione.

Per farlo, il runtime di Ammy utilizza i socket. Ecco il motivo per cui la prima volta che fate F5 con Visual Studio il firewall di Windows intercetta la comunicazione di rete:

image

Ovviamente dovete cliccare su Consenti accesso. Fatto questo potete mantenere l’applicazione in esecuzione (magari su un monitor secondario), tornare in Visual Studio ed editare in tutta libertà il codice Ammy. Ogni volta che salverete il file, Visual Studio scatenerà un refresh della Window.

Sulla homepage ufficiale di Ammy c’è un bel video di poco meno di 30 minuti che vi mostra questa caratteristica del linguaggio. Cito testualmente dalla fonte: “Note that application was always running during the development, never needing to restart”.

Voglio farvi notare un’ultima cosa, prima di salutarvi. Nell’editor di codice Ammy c’è un pallino che indica la validità del codice Ammy (lo ricordo, che riprende la sintassi dal JSON). Quindi:

  • Pallino verde: tutto ok
  • Pallino rosso: qualcosa non va in Ammy

image

Personalmente, ad oggi trovo piuttosto ostico scrivere Ammy. Dopo 10 anni di XAML, è dura cambiare linguaggio per la UI, ma i vantaggi ci sono, cerco di adeguarmi, per cui butto sempre un occhio a questo indicatore per avere una conferma visiva. Per ora non sto usando Ammy in alcun progetto reale per un cliente, ma non si sa mai.

Ok! Mi hai detto che ci sono dei bug, quali sono?
I bug di Ammy sono tanti, essendo un linguaggio in fase di sviluppo. Per rimanere sul tema di questo post, accade la seguente cosa. Supponiamo di avere un po’ di code-behind, legato ad un evento di un qualsiasi controllo della UI. Ricordate la PasswordBox di cui abbiamo parlato nell’ultimo post? Supponiamo di sottoscriverne l’evento PasswordChanged.

PasswordBox {
#Cell(1, 1),
VerticalAlignment: Center,
HorizontalAlignment: Stretch,
PasswordChanged: "changed"
}

E’ esattamente come faremmo con lo XAML. L’intellisense ci viene in aiuto, fino ad un certo punto. Purtroppo dobbiamo scrivere noi l’event handler legato a questo evento. Una volta che avete sottoscritto l’evento e predisposto l’event handler nel code-behind, ovviamente tutto funziona. Fate per scrivere una password, e passate dal codice del vostro handler. Nulla di strano fino a qua.

Se successivamente modificate il codice Ammy a run-time e salvate, la Windows viene aggiornata, ma l’event handler si sgancia. Morale: dovete stoppare e riavviare l’applicazione. Da tener presente che tutto questo accade se lavorate con eventi ed un po’ di code-behind. Se approcciate con MVVM il problema non si pone, ma c’è comunque.

Happy coding!

Send to Kindle

Formattazione XML con Notepad++

Negli ultimi giorni ho litigato parecchio con Open XML SDK, la libreria Microsoft open che permette di creare da codice documenti di tipo Office, vale a dire Word ed Excel, giusto per citarne i due più famosi.

E’ giusto ricordare che i formati .docx e .xlsx non sono nient’altro che file zip compressi, che al loro interno contengono tutte le informazioni per rappresentare i documenti. Ed il tutto è gestito attraverso file XML che possono essere tranquillamente letti, modificati e manipolati. La libreria Open XML SDK semplifica un po’ le cose, ma c’è comunque da impazzire un pochino.

Fatta questa premessa, mi è capitato di dover visualizzare questi file XML attraverso Notepad++ che, purtroppo, di default non è in grado di formattare a dovere. Quindi, per riassumere:

  • apro un file .docx attraverso 7-Zip
  • navigo i folder contenuti, seleziono un file XML
  • premo F4 per avviare l’editor, nel mio caso Notepad++
  • il file XML è visualizzato su una singola lunghissima linea di codice.

Burp! Panico.

Come risolvere? Con i plugin giusti di Notepad++, ovviamente.

  • Aprite Notepad++
  • Aprite il menù Plugins –> Plugin Manager –> Show Plugin Manager

image

Dall’elenco dei plugin selezionate XML Tools.

image

Cliccate Install, riavviate Notepad++. Purtroppo potrebbe capitarvi di dover riavviare un paio di volte Notepad++, perchè prima vi aggiorna il Plugin Manager e poi dovete richiedere nuovamente l’installazione del plugin XML Tools. Fatto questo, avete abilitato tutta una serie di nuovi strumenti per lavorare più velocemente con i file XML.

image

Et voilà, un bel colpo di Pretty print per formattare l’XML e poterlo leggere comodamente!

Send to Kindle