Il blog di Emanuele Mattei

giovedì 30 maggio 2024

Download gioco Wuthering Waves

 


Un gioco di azione molto ben fatto e soprattutto adatto anche ai ragazzi, parliamo di Wuthering Waves, che offre una grafica molto ben curato.

Il gioco è per sistemi operativi Windows.

Per maggiori informazioni e download visitate il seguente sito https://store.epicgames.com/it/p/wuthering-waves-76ebc5 

mercoledì 29 maggio 2024

strumento online per rimuovere gli oggetti nelle immagini

 


Dal seguente sito https://tinywow.com/image/remove-objects è possibile utilizzare uno strumento online gratuito per rimuovere degli oggetti dalle immagini .

Lo strumento è gratuito e non richiede ne account e ne indirizzo email.


martedì 28 maggio 2024

ravendb database realizzato in C#

 


Il database NoSQL Database | RavenDB ACID NoSQL Document Database  realizzato tramite il linguaggio di programmazione C#, orientato agli oggetti, fornisce una valida base per gestire determinati ambiti.

Tra le versioni anche una gratuita, per maggiori informazioni e download visitate il sito indicato.



lunedì 27 maggio 2024

Software gratuito portatile di office automation

Un gran lista di programma gratuiti portatili, che non richiedono installazione, riguardante l'office automation.
Software per la video scrittura, foglio di calcolo, finanza e tanto altro disponibile gratuitamente ed in lingua inglese.
Per maggiori informazioni e download visitate il seguente sito https://portableapps.com/apps/office

domenica 26 maggio 2024

Strumento online per trasformare un file immagine da colori a bianco e nero

Un ottimo strumento online che permette di trasformare foto ed immagini da colori in bianco nero.
Dal seguente sito https://tinywow.com/image/grayscale una volta caricato online il file immagine, viene trasformato in bianco e nero.
Il download è gratuito e non richiede ne indirizzo email e ne registrazioni. 
Ottimo sito

sabato 25 maggio 2024

Download gioco FoxCode

 


Un gioco sparatutto adatto a tutti per sistemi operativi Windows.

Il gioco FoxCode con una grafica molto ben fatta offre anche una giocabilità molto valida.

Per il download e maggiori informazioni visitate il seguente sito https://store.epicgames.com/it/p/versus-0763da

venerdì 24 maggio 2024

Download Farming Simulator 22

 


Un gioco molto apprezzato e conosciuto, quello del simulatore di campagna che in questi anni è giunto alla versione 22.

Parliamo del gioco in lingua italiana Farming Simulator 22, disponibile gratuitamente per sistemi operativi Windows.

Fino al 30 maggio si potrà scaricare gratuitamente, dopo tale data il download sarà a pagamento.

Per maggiori informazioni e download visitate il seguente sito https://store.epicgames.com/it/p/farming-simulator-22 

giovedì 23 maggio 2024

MAUI impostare una page iniziale

Nel caso che vogliamo impostare una pagina iniziale anzichè la solita Mainpage, dobbiamo modificare il file app.xaml.cs
Supponiamo di aver creato una pagina (Tasto destro sul progetto in esplora soluzioni->Aggiungi->nuovo Elemento-> .Net Maui ContentView) dal nome PaginaIniziale,  e che vogliamo avviare per prima o solo questa anzichè la solita mainpage, modifichiamo il file App.XAML.cs, con il seguente frammento.

 public App()
 {
     InitializeComponent();
     MainPage = new NavigationPage(new PaginaIniziale());
   
 }

mercoledì 22 maggio 2024

Sito sul sistema operativo Windows windowslatest

Un sito in lingua inglese ma con numerose notizia aggiornate sul sistema operativo Windows.
Il sito https://www.windowslatest.com/ offre numerosi articoli e notizie sulle novità dell'ultima versione del sistema operativo Windows.

martedì 21 maggio 2024

linq metodo ToLookup per creare un oggetto con chiave

 


Tramite il metodo "ToLookup" di una lista, possiamo ottenere un oggetto composto da chiave ed oggetto. Nel metodo ToLookup, possiamo indicare per quale colonna utilizzare come colonna, come rappresentata nella figura precedente.

Di seguito il frammento di codice di esempio.

C#

 List<Persona> persone = new List<Persona>();

 Persona persona = new Persona();

 persona.Cognome = "Mattei";

 persona.Nome = "Emanuele";

 persona.Eta = 1;

 persone.Add(persona);

 persona = new Persona();

 persona.Cognome = "Cristaldi";

 persona.Nome = "Luigi";

 persona.Eta = 2;

 persone.Add(persona);

 persona = new Persona();

 persona.Cognome = "Bianchi";

 persona.Nome = "Luca";

 persona.Eta = 3;

 persone.Add(persona);

var NuovoOggetto = persone.ToLookup(p => p.Nome);


lunedì 20 maggio 2024

Angular la gestione dello stile

Si riporta l'articolo scritto per il sito https://www.iprogrammatori.it/articoli/javascript/art_angular-la-gestione-dello-stile-_1858.aspx


In questo nuovo articolo sulla tecnologia Angular, utilizzando il linguaggio di programmazione TypeScript, vedremo come gestire l’aspetto grafica delle varie pagine, in particolare lo Style.
Tramite alcune tecniche e classi, possiamo impostare uno stile ad un controllo o riferimento tag html in maniera anche dinamica. L’articolo vuole fornire quella conoscenza di base sufficiente a poter gestire in vari progetti l’aspetto grafico delle varie pagine html.
Utilizzeremo come ambiente di sviluppo Visual Studio Code, anche se va bene qualsiasi strumento (editor) per la gestione dei siti con Angular.


Lo stile statico e dinamico

Dopo aver creato un progetto in Angular, nel file app.component.html, impostiamo un div con del testo con il colore del testo verde.
Di seguito il frammento di codice delle suddette operazioni.

HTML

 <div style="color: greenyellow;">titolo</div>

Se invece abbiamo la necessita di impostare il colore del testo in base ad un valore, possiamo verificare se una variabile è uguale ad un certo  valore ed in base a tale valore impostare un colore.

Di seguito un esempio che verifica se la variabile è uguale al valore 0, imposta un colore, altrimenti altro colore al testo.

 TypeScript:

export class AppComponent {

  public indice: number = 4;

 

}

 

HTML.

 <div [style]="indice == 0 ? 'color: greenyellow' : 'color: blue' ">titolo2</div>



Ora non resta che testare il nostro frammento di codice per verificare il testo cambiare di colore in base alla variabile.
Nel frammento di codice precedente, abbiamo impostato uno stile (il colore del testo) in base al valore di una variabile. Il testo avrà un colore diverso a seconda del valore.
Altra tecnica per impostare dinamicamente lo stile di un elemento html nella pagina, è quello di utilizzare il singolo attributo. Di seguito si riporta un frammento di codice, con il quale si imposta il colore del carattere utilizzando proprio l’attributo Color visto nel frammento di codice precedente.


HTML

  <div [style.color]="indice == 4 ? 'red' : 'green' ">titolo3</div>


Se invece abbiamo la necessità di impostare il colore tramite una funzione ed in base al parametro restituire un certo risultato, tale tecnica è possibile aggiungere il nome della funzione.

Di seguito si riporta il frammento di codice HTML e TypeScript delle suddette operazioni.

HTML:

 <div [style.color]="getColore(5)">titolo4</div>

 

 

TypeScript:

public getColore(parametro: number) : string {

 let  returnColore: string = 'Orange';

 

  if(parametro==5)

  returnColore = 'Black';

 

  return returnColore;

 

}

 

La direttiva NgStyle

Altra tecnica per impostare il colore ad un elemento della pagina html, è quello di utilizzare la Direttiva “NgStyle” una parola chiave di Angular che permette di applicare un suo stile.
Il frammento di codice qui di seguito, imposta il colore del testo se una variabile rispetta una condizione, altrimenti altro colore del testo .

HTML:

  <div [ngStyle]="indice==7 ? { color: 'pink'} : { color: 'darkgreen'}" >Titolo 5</div>

 

TypeScript:

public indice: number = 7;

 Altra tecnica è quella di passare ad una variabile il valore che si vuole impostare ad un attributo dello stile.

Di seguito il frammento di codice delle suddette operazioni.


HTML:

<div [ngStyle]="{color: stile}" >Titolo 6</div>

 

TypeScript:

  public stile: string = "red";

 


La direttiva NgClass

Con questa direttiva, ossia parola chiave, possiamo applicare uno stile ad un elemento html.
Si crea nel file di tipo “.css” per esempio app.component.css, due stili, che impostano due colori al testo.
Di seguito il frammento di codice di tale dichiarazione.


CSS:

.testo-rosso {

  color:red;

}

.testo-blue {

  color:blue;

}

 



Nel file TypeScript, scriviamo una variabile con il quale assegneremo il nome dello stile, che vogliamo applicare ad un elemento della pagina.
Di seguito il frammento di codice delle suddette operazioni.

TypeScript:

export class AppComponent {

 

  public stileClasse: string = "testo-rosso";

 

Nel file html, tramite la direttiva NgClass, applichiamo la variabile.

HTML:

<div [ngClass]="stileClasse" >Titolo 7</div>

 

 Conclusioni

L’articolo ha fornito una panoramica sulla gestione della grafica nelle varie tecniche utilizzando il linguaggio di programmazione TypeScript e la tecnologia Angular. I vari esempi e scenari permettono al programmatore di adottare una tecnica adeguata e soprattutto conoscere le possibilità e strategie da applicare nella creazione della propria applicazione.

Angular e TypeScript nella loro versatilità offrono al programmatore diverse possibilità di gestire gli aspetti grafici dei singoli elementi della pagina. 

domenica 19 maggio 2024

Linq ordinamento con il secondo tipo di ordinamento con ThenBy

Nel caso che dobbiamo ordinare una lista per un secondo elemento, possiamo utilizzare il metodo ThenBy, di Ling, utilizzando il metodo OrderByDescending.

Di seguito un frammento di codice, con il quale effettua un ordinamento per nome e come secondo elemento di ordinamento il cognome a parità di iniziali uguali tra loro del primo elemento di ordinamento.

C#
  List<Persona> persone = new List<Persona>();
  Persona persona = new Persona();
  persona.Cognome = "Mattei";
  persona.Nome = "Emanuele";
  persona.Eta = 1;
  persone.Add(persona);
  persona = new Persona();
  persona.Cognome = "Cristaldi";
  persona.Nome = "Luigi";
  persona.Eta = 2;
  persone.Add(persona);
  persona = new Persona();
  persona.Cognome = "Bianchi";
  persona.Nome = "Luca";
  persona.Eta = 3;
  persone.Add(persona);


  var personeOrdinate = persone.OrderByDescending(x => x.Nome).ThenBy(c => c.Cognome);



sabato 18 maggio 2024

Sito di monitoraggio ransomware ed altre informazioni utili con il sito ransomfeed

Un sito in lingua italiana che fornisce interessanti informazioni sugli attacchi di tipo ransomware.

Il sito Ransomfeed offre una serie di informazioni aggiornate ed è molto ben fatto.


venerdì 17 maggio 2024

Estendere la classe string con un nuovo metodo

Supponiamo che abbiamo la necessità nel linguaggio di programmazione C#, di estendere la classe (per esempio dotare della classe string di un metodo) che utilizziamo in un progetto form.
Di seguito la classe che estendiamo con un metodo che conta solo le lettere all'interno di una valore.

    public static class EstendiString
    {
        public static int ContaSoloTesto(this string testo)
        {
            if (string.IsNullOrWhiteSpace(testo))
            {
                return 0;
            }
            int totaliCaratteri =  testo.ToList().Where(p => char.IsLetter(p)).Count();
            return totaliCaratteri;
        }
    }

Di seguito il relativo utilizzo

 string MioTesto = "Testo!,3";

 int totaleCaratteri = MioTesto.ContaSoloTesto();

 MessageBox.Show(totaleCaratteri.ToString()); //Restituisce 5