[c#] Mostrare ed ordinare il contenuto di un array

10 01 2007

In questo semplice esempio viene mostrato come (dopo aver creato e riempito un array) visualizzare il suo contenuto. Le visioni son di due tipi. La prima è non ordinata mentre la seconda ordinata.

string[] myArray = { “myValue3″ , “myValue1″ , “myValue2″ } ;

Console.WriteLine(”*** Unsorted Array ***”);
foreach(string myString in myArray)
{
Console.WriteLine( myString ) ;
}

Array.Sort( myArray ) ;

Console.WriteLine(”*** Sorted Array ***”);
foreach(string myString in myArray)
{
Console.WriteLine( myString ) ;
}





Mostrare il contenuto di una Enum

7 01 2007

Grazie al seguente codice, possiamo capire come mostrare il contenuto di una Enum.
Leggi il seguito di questo post »





Ordinare un DataGrid utilizzando il DataView

7 01 2007

Il seguente script, ci mostra come ordinare una qualsiasi fonte dati prima di mostrarla a video.

Leggi il seguito di questo post »





[C#] Scopriamo le HashTable

7 01 2007

L’HashTable è una classe offerta dal framework .NET presente all’interno del namespace System.Collections e ci consente di creare una lista in memoria (non salvata su disco) di elementi composti da una chiave e da un valore.

Ora vediamo come usarle senza disperderci in spiegazioni ma usando codice:

using System.Collections ;

private Hashtable _hashTable = new Hashtable()    ;

Ora vediamo come aggiungere un valore:

_hashTable.Add( <chiave> , <valore> ) ;

Ricordo, che in base alla definizione del metodo Add possiamo aggiungere qualsiasi elemento sia come chiave (a patto che sia univoco) che come valore (qua i duplicati sono ammessi)

_hashTable.Add( object key , object value ) ;

Attenzione, il valore di <chiave> deve esser univoco all’interno della lista! Per veder se è già presente è molto semplice:

if( _hashTable.Contains( <chiave> ) )
{
// La chiave <chiave> è già presente.
// Non è possibile inserirla nuovamente.
// Possiamo però modificare il suo valore attuale.
_hashTable[ <chiave> ] = <nuovovalore> ;
}

Supponiamo di voler scorrere tutti gli elementi della HashTable:

foreach( DictionaryEntry dictionaryEntry in _hashTable )
{
Object oKey = dictionaryEntry.Key ;
Object oValue = dictionaryEntry.Value ;

// Elaborazione

}

Prima di concludere, vediamo un esempio “concreto e pratico”:

private void SetValue( string MyKey , string MyValue )
{
if( _hashTable.Contains( MyKey ) )
{
_hashTable[ MyKey ] = MyValue ;
}
else
{
_hashTable.Add( MyKey , MyValue ) ;
}
}





[C#] Ordinare un DataGrid utilizzando il DataView

20 09 2006

Il seguente script, ci mostra come ordinare una qualsiasi fonte dati prima di mostrarla a video.

Datagrid _datagrid = new DataGrid();
DataTable _datatable = new DataTable(”MyTableName”) ;
DataView _dataview = new DataView() ;

_datagrid.DataSource = GetMyDataSource() ;

_datatable = (DataTable) _datagrid.DataSource ;

_dataview = _datatable.DefaultView ;
_dataview.Sort = ” Sortcolumn1  ASC ” ;

_datagrid.DataSource = _dataview ;
_datagrid.DataBind();

Il codice è molto semplice, qualsiasi dubbio chiedete pure e rispondo senza problemi :)





[C#] Sfruttare il DataItem all’interno dell’ItemDataBound

14 09 2006

Spesso per mostrare a video i nostri dati, ricorriamo ad utilizzare i Datagrid e per personalizzare la visualizzazione spesso utilizziamo l’ItemDataBound
Leggi il seguito di questo post »





Scorrere una ControlCollection

6 09 2006

Spesso e volentieri capita di dover scorrere una ControlCollection partendo da un determinato oggetto e scendere ricorsivamente al suo interno. Il primo esempio che mi viene in mente è per analizzare in debug determinati controlli. Infatti il seguente esempio ci mostrerà come:

private void ShowControlCollection( System.Web.UI.ControlCollection _controlCollection )
{
foreach( System.Web.UI.Control _control in _controlCollection )
{
Debug.WriteLine( _control.ClientID ) ;
Debug.WriteLine( _control.UniqueID ) ;
Debug.WriteLine( _control.GetType() ) ;

if( _control.HasControls() )
{
this.ShowControlCollection( _control.Controls ) ;
}

}

}

L’esempio è stato fatto per una pagina aspx. Ora non vi resta che provarlo e tener sotto controllo la console di diagnostica del debug.





Elaborazione in un thread separato

1 08 2006

Spesso capita che una elaborazione possa bloccare il lavoro dell’utente finale in quanto è lunga. In quel frangente di tempo il nostro omino potrebbe fare altri lavori senza dover interrompere quello in corso. Per fare ciò utilizzeremo i Thread. Ovviamente lo script sarà in versione base. Eventuali miglioramenti li potete fare adattando il tutto alle esigenze del momento.

Leggi il seguito di questo post »





[.NET] “Da fare” solo in caso di debug

25 07 2006

Molte volte capita l’esigenza di dover fare una o più operazioni solo in caso di debug e non in release in quanto servono solo a noi sviluppatori per avere un’idea di come stà procedendo il tutto.
Leggi il seguito di questo post »





[C#] Utilizzo delle transazioni

16 06 2006

Ecco un breve esempio di come utilizzare le transazioni in C#

Leggi il seguito di questo post »