mercoledì 28 febbraio 2018

free ebook .Net Framework C#

.NET Framework Notes for Professionals

Dal seguente sito https://sf.tradepub.com/free-offer/.net-framework-notes-for-professionals/w_goaa01 potete scaricare un ebook gratuito in formato pdf ed in lingua inglese sul linguaggio C#.
L'ebook contiene numerosi esempi di come utilizzare al meglio il .Net Framework anche in vari ambiti con il linguaggio di programmazione C#.
Per il download e maggiori informazioni visitate il sito indicato.

martedì 27 febbraio 2018

WPF .Net mahapps.metro : applicare alle applicazioni WPF lo stile metro

Si riporta l'articolo scritto per il sito https://www.iprogrammatori.it/articoli/programmazione/art_net-mahappsmetro-applicare-alle-applicaz_1552.aspx

Per tutti coloro che sviluppano applicazioni per ambiente Desktop, in particolare i progetti di tipo “Windows Presentation Foundation” e vogliono applicare lo stile Metro, ossia una grafica che si avvicina al nuovo sistema Windows, tramite il framework gratuito Mahapps.metro http://mahapps.com/ posso applicare lo stile alle varie finestre.

Creazione del progetto

Si crea un progetto per Desktop di tipo WPF, con il linguaggio di programmazione di proprio interesse.
Dopo aver creato il progetto dobbiamo aggiungere il Framework Mahapps al nostro progetto.
Dal menu Strumenti selezionare la voce “Gestione Pacchetti Nuget” e dal sottomenu selezionare la voce “Console di gestione pacchetti”.
Nella finestra che viene aperta, scriviamo la seguente istruzione che permetterà di installare i vari componenti e file.
Il comando da scrivere è il seguente:
“Install-Package MahApps.Metro”

A questo punto facciamo click sul pulsante enter, in modo che verrà installato il tutto. Scriviamo la seguente istruzione, che ci permetterà di installare anche le risorse “Install-Package MahApps.Metro.Resources” che serviranno per visualizzare le icone o altri aspetti grafici.
Adesso andiamo a modificare la finestra, con aspetti grafici oppure ad applicare ai vari controlli, che possono essere il pulsante o la casella di testo, stili tipici di metro.
Per applicare tali stile ed icone dobbiamo includere il riferimento alla risorsa installata.
Nel file App.xaml andranno inseriti i vari riferimenti che riportiamo qui di seguito nel file di tipo “XAML”


<Application x:Class="WpfApplication.App"

             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

             StartupUri="MainWindow.xaml">

    <Application.Resources>

        <ResourceDictionary>

            <ResourceDictionary.MergedDictionaries>

               

                <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Controls.xaml" />

                <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Fonts.xaml" />

                <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Colors.xaml" />

                <ResourceDictionary    Source="/Resources/icons.xaml" />

               

                <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/Blue.xaml" />

                <ResourceDictionary Source="pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml" />

            </ResourceDictionary.MergedDictionaries>

        </ResourceDictionary>

    </Application.Resources>

   

</Application>

Nella pagina “MainWindow.xaml” scriviamo nella parte del markup il seguente tag, in modo che viene applicato alla finestra del Framework.


<Controls:MetroWindow

                      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

                      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

                      xmlns:Controls="http://metro.mahapps.com/winfx/xaml/controls"

                      x:Class="MahApps.Metro.Simple.Demo.MainWindow"

                      Title="MainWindow"

                      Height="200"

                      Width="600"

 

                      BorderThickness="0"

                      GlowBrush="Black"

                      ResizeMode="CanResizeWithGrip"

 

                      WindowTransitionsEnabled="False"

                      WindowStartupLocation="CenterScreen">

   

    <Controls:MetroWindow.RightWindowCommands>

        <Controls:WindowCommands>

            <Button Content="Impostazioni" />

            <Button>

                <StackPanel Orientation="Horizontal">

                    <Rectangle Width="20"

                   Height="20"

                   Fill="{Binding RelativeSource={RelativeSource AncestorType=Button}, Path=Foreground}">

                        <Rectangle.OpacityMask>

                            <VisualBrush Stretch="Fill"  Visual="{StaticResource  appbar_cupcake}" />

                           

                        </Rectangle.OpacityMask>

                    </Rectangle>

                    <TextBlock Margin="4 0 0 0"

                   VerticalAlignment="Center"

                   Text="Testo immagine" />

                </StackPanel>

            </Button>

        </Controls:WindowCommands>

    </Controls:MetroWindow.RightWindowCommands>

</Controls:MetroWindow>


Passiamo in visualizzazione codice e scriviamo le istruzioni per rendere effettive tale implementazioni.
Inseriamo lo spazio dei nomi che ci permetterà di gestire le classi di questo Framework.
In alto sopra ad ogni dichiarazione, scriviamo la seguente dichiarazione:


using MahApps.Metro.Controls;

Mentre la classe non deve ereditare da nessun altra e togliamo l’inizializzazione dei controlli, il tutto come mostrato qui di seguito.


using MahApps.Metro.Controls;

namespace WpfMetro

{

    ///

    /// Logica di interazione per MainWindow.xaml

    ///

    public partial class MainWindow 

    {

        public MainWindow()

        {

            //InitializeComponent();

        }

    }

}


Ritorniamo nella parte grafica, o meglio dove modificare il tag xaml, ed aggiungiamo un pulsante, con lo stile che lo rende ovale.
Qui di seguito un esempio di codice XAML.


<Button Content="Button" HorizontalAlignment="Left" Style="{DynamicResource   MetroCircleButtonStyle}" Margin="56,53,0,0" VerticalAlignment="Top" Width="102" Height="32"/>

 Se invece vogliamo applicare uno stile alla casella di testo riguardante la x per pulire la casella o una piccola filigrana di suggerimento nella casella per indicare cosa scrivere, il frammento di codice qui di seguito illustra tale tecnica.


<TextBox Controls:TextBoxHelper.Watermark="Testo descrittivo" Margin="154,73,0,0" Controls:TextBoxHelper.ClearTextButton="True" />


Conclusioni

L’articolo ha voluto fornire al lettore alcune tecniche di come applicare uno stile metro alle proprie applicazioni utilizzando framework gratuiti ed esistenti che semplificano lo sviluppo di applicazioni. Le potenzialità e gli stili forniti da questo Framework sono numerosi e lasciamo al lettore l’approfondimento e lo studio per rendere quel tocco speciale ai propri progetti. Con le nuove versioni di Visual Studio, in particolare dalla 2013 si possono aggiungere funzionalità importanti, ma soprattutto semplificare la scrittura di codice. I numerosi framework a disposizione permettono di estendere le applicazioni con grafiche e funzioni avanzate con semplici pochi passaggi.

lunedì 26 febbraio 2018

FT: sito sul parco delle Valli un portale per conoscere la biodiversità

Un portale con molteplici obiettivi quello riguardante il Parco delle Valli, che è visibile qui http://parcodellevalli.blogspot.it/
Il fuori tema di questa settimana, vuole far conoscere un sito nel quale si trovano informazioni sul parco ed al tempo stesso anche sulla biodiversità.
Il sito ha anche il compito di renderlo sempre più fruibile.
Un sito in italiano realizzato da italiani.

domenica 25 febbraio 2018

.Net Introduzione al Framework Metro UI CSS

Si riporta l'articolo scritto per il sito https://www.iprogrammatori.it/articoli/programmazione/art_introduzione-al-framework-metro-ui-css_1549.aspx

Nel caso che abbiamo l’esigenza di applicare nelle nostre applicazioni web, in particolare Asp.Net, uno stile tipo quello di Metro, il Framework Metro UI Css qui https://metroui.org.ua/index.html il sito ufficiale, fornisce interessanti funzionalità che danno alle nostre applicazioni web tale stile.
Una grafica simile a quella introdotto con il nuovo sistema operativo Windows 8, e che oggi viene utilizzata in diversi contesti.
Ma vediamo in dettaglio come utilizzarlo.

Creazione del progetto

In Visual Studio 2017 community , si crea un nuovo progetto di tipo web, utilizzando il linguaggio di proprio interesse.
Dopo aver creato il progetto di tipo “Asp.Net”, ci troviamo le varie pagine e cartelle create dal progetto.
Per installare il Framework metro, dobbiamo utilizzare la funzionalità “Gestione Pacchetti Nuget” presente nel menu “Strumenti”.
Se vogliamo utilizzarla tramite la console a riga di comando, dobbiamo eseguire il seguente comando
“Install-Package Metro.UI.CSS”
nella finestra “Console di Gestione Pacchetti “ ed eseguire tale comando.
Oppure tramite la voce di menu “Gestisci Pacchetti Nuget per la soluzione” nella finestra che verrà aperta scrivere nella casella “Sfoglia” digitiamo il testo “Metro.UI.CSS” in modo che ci fornisce i vari componenti a disposizione.
Selezioniamo il primo, quello con la versione v3.0.17 che è al momento l’ultima versione.
A questo punto, dopo aver installato il framework, non ci resta che scrivere il codice.

Stesura del codice

Verranno copiati nel nostro progetto, ed in particolare nella cartella “Content” i file di tipo “.css”.
Vediamo un esempio di come applicare ad un pulsante, lo stile metro.
Apriamo la nostra pagina aspx, in particolare la “Default.aspx”, ed inseriamo la dichiarazione per i fogli di stile, se invece utilizziamo una masterpage, tale dichiarazione andrà in quella, in modo che sarà utilizzata in tutte le pagine.
Qui di seguito l’esempio di codice, da mettere nella parte “html”, ossia nei file di tipo “aspx” o “.master”.





<link href="Content/metro.css" rel="stylesheet">

    <script src="Scripts/jquery-1.10.2.js"></script>

    <script src="Scripts/metro.js"></script>

Nella pagina di default, nel file “.aspx” inseriamo un controllo di tipo “button”, nella proprietà “Class” impostiamo un valore per applicare lo stile metro per i button, in particolare quello relative al blu informativo.


<asp:Button ID="Button1" runat="server" class="button info block-shadow-info text-shadow" Text="Prova" />

Proviamo ad eseguire il nostro codice, vedremo che nei vari browser (IE, Chrome, firefox, edget, etc.) verrà visualizzato il pulsante con un certo stile, azzurro.
Nel esempio precedente abbiamo visto come applicare uno stile ad un controllo button, ossia ad un pulsante di .Net.
Se invece vogliamo applicare dei controlli particolari, tipo una galleria fotografica, possiamo utilizzare il controllo Carousel qui https://metroui.org.ua/carousel.html diversi esempi.
Vediamo come applicate tale stile, e magari mettere anche del testo oltre che delle immagini.
Si crea una nuova cartella denominata “img” a questo punto si aggiungono delle immagini di tipo “.Jpg”.
Nella masterpage, dobbiamo aggiungere il riferimento a javascript, qui di seguito il frammento di codice.


<link href="Content/metro.css" rel="stylesheet">
    <link href="Content/metro-icons.css" rel="stylesheet">
    <script src="Scripts/jquery-3.1.1.min.js"></script>

    <script src="Scripts/jquery-1.10.2.js"></script>

    <script src="Scripts/metro.js"></script>

A questo punto passiamo nella pagina aspx e scriviamo il codice html impostando i vari fogli di stile per applicare una certa grafica.
Qui di seguito si riporta la galleria fotografica, dove il primo riquadro è impostato con il testo, mentre le altre tre con immagini presenti nella cartella Img creata in precedenza.


<div class="carousel" data-role="carousel" data-height="200" data-control-next="" data-control-prev="" style="width: 100%; height: 200px;">

        <div class="slide padding20 debug" style="display: block; left: -224px;">

            <h2>Titolo Slide testo</h2>

            <p>

                Galleria :: immagini

            </p>

        </div>

        <div class="slide" style="display: block; left: -224px;">

            <div class="image-container image-format-fill" style="width: 100%; height: 100%;">

                <div class="frame">

                    <div style="width: 100%; height: 100%; background-image: url("Img/immagin1.jpg"); background-size: cover; background-repeat: no-repeat; border-radius: 0px;"></div>

                </div>

            </div>

        </div>

        <div class="slide" style="display: block; left: -224px;">

            <div class="image-container image-format-fill" style="width: 100%; height: 100%;">

                <div class="frame">

                    <div style="width: 100%; height: 100%; background-image: url("Img/Immagine2.jpg"); background-size: cover; background-repeat: no-repeat; border-radius: 0px;"></div>

                </div>

            </div>

        </div>

        <div class="slide" style="display: block; left: 0px;">

            <div class="image-container image-format-fill" style="width: 100%; height: 100%;">

                <div class="frame">

                    <div style="width: 100%; height: 100%; background-image: url("Img/Immagine3.jpg"); background-size: cover; background-repeat: no-repeat; border-radius: 0px;"></div>

                </div>

            </div>

        </div>

        <div class="carousel-bullets"><a class="carousel-bullet" href="javascript:void(0)" data-num="0"></a><a class="carousel-bullet" href="javascript:void(0)" data-num="1"></a><a class="carousel-bullet" href="javascript:void(0)" data-num="2"></a><a class="carousel-bullet bullet-on" href="javascript:void(0)" data-num="3"></a></div>

        <span class="carousel-switch-next"><span class="mif-chevron-right"></span></span><span class="carousel-switch-prev"><span class="mif-chevron-left"></span></span>

    </div>


Conclusioni

Lo sviluppo di soluzioni con .Net è notevolmente cambiato con le ultime due versioni di Visual Studio e tramite l’introduzione di Nuget, che ha permesso a molti programmatori del mondo di condividere e soprattutto mettere a disposizione gratuitamente alla collettività, tools, librerie ed altro ancora per la stesura di applicazioni, permettendo in questo modo a tutti gli utilizzatori di questo ambiente di sviluppo di realizzare applicazioni in maniera più rapida ed efficiente.
L’utilizzo di framework, che estendono le funzionalità di .Net 4.6 è molto importante, perché riducono il tempo di realizzo ed al tempo stesso forniscono ai programmatori strumenti con funzionalità ampliate ed avanzate.
L’articolo non solo ha voluto evidenziare l’utilizzo di questo framework per applicare un certo stile alle applicazioni Asp.Net ma anche le potenzialità e l’importanza di Nuget, che permette a molti di mettere a disposizione della comunità di programmatori .Net interessanti risorse.