Ce e DataBinding? Pe scurt spus:
DataBinding este o caracteristica puternica, oferit de .NET framework, care permite elementelor vizuale intr-un client sa se conecteze la o sursa de date, cum ar fi DataSets, DataViews, Array, etc. O conexiune este stabilită intre sursa si element, astfel incit orice modificiri aduse la sursa de date sunt reflectate imediat în elementul vizual si vice-versa.
Custom Controls in .Net Compact Framework
In acest articol, vom descrie controalele disponibile in dezvoltarea aplicatiilor cu .Net Compact Framework, modul in care putem crea controale particularizate si comportamente ale acestor controale in aplicatii.
.Net Compact Framework pune la dispozitia dezvoltatorului un set bogat de controale pentru realizarea interfetei utilizatorului: etichete, casete pentru text, meniuri, controale pentru timp si data,imagini etc.
Mai intai, as vrea sa evidentiem codul care se genereaza automat, in momentul folosirii controalelor. Facem drag and drop la un textbox.
Extinderea unei clase (exemplu c#)
Microsoft a introdus, in versiunea 3.5 a .Net framework posibilitatea de a extinde o clasa fara a creea o noua clasa, derivata din clasa pe care vrem sa o extindem. Pana in versiunea 2.0, pentur a introduce (adauga) noi metode unei clase singura posibilitate era crearea unei noi clase, care sa mosteneasca clasa pe care vrem sa o extindem. Daca clasa pe care o vroiam completata era declasata sealed, derivarea ei nu este posibila. Extinderea rezolva problema claselor declarate sealed – orice clasa accepta extinderi.
Mai concret, ce e aia? Sa luam un exemplu simplu: clasa String – are o serie de metode care se aplica pe sirurile de caractere. Printre metodele pe care le pot folosi nu se gaseste insa, de exemplu, o metoda care sa imi inverseze (reverse) un string. Am mai multe posibilitati: scriu o metoda in locul unde am nevoie care sa faca asta, scriu codul de inversare inline (e mic… 2 linii, doar), imi creez o clasa de tip CommonHelperFunctions unde pun toate metodele ajutatoare etc. Sau… extind clasa String adaugandu-i o metoda noua: Reverse();
Pentru a exemplifica mai bine, am ales sa extind clasa String adaugandu-i urmatoarele metode: Reverse, IsDate, IsInteger, IsDouble, CountNonEmptyChars, CountWords, AlternateCase. Numele metodelor pe care vreau sa le introduc spun (in engleza, ce-i drept) cam ce face respectiva metoda. Pentru a implementa ceea ce am propus mai sus se procedeaza in felul urmator: se creeaza o clasa publica, statica, in care se definesc metodele repsective ca metode statice si care accepta ca prim parametru ceva de genul urmator: this string str.
Continue reading
Data si timpul in .Net
Data si timpul in .Net
In orice limbaj de programare si in orice program, la un moment dat este necesara folosirea datei sau timpului si diverselor operatii cu acestea. In .Net exista o structura specializata care se ocupa de data si timp, DateTime. Lucrul cu structura DateTime este simplu, intuitiv.
Exista 12 constructori in structura DateTime, si cateva metode (proprietati) statice care permit crearea sau obtinerea unei instante a acestei structuri. Toate posibilitatile de obtinere a unui obiect de tip DateTime prin folosirea contructorului sunt prezentate pe msdn aici. In afara de aceasta cale, mai exista si alte posibilitati de a obtine un obiect de tip DateTime:
Continue reading
Despre Compact Framework
Microsoft a creat prima data .Net Framework pentru sistemele desktop si pentru sistemele server, apoi a construit pe baza acestuia un framework mai mic, orientat pe client, .Net Compact Framework (.net CF are ca marime 8% din .Net Framework).
Cele doua platforme au foarte multe in comun, incepand de la tipurile de date, spatii de nume, clase, proprietati, metode, evenimente. Aceasta arhitectura comuna permite si folosirea codului intre cele doua tipuri de programare: desktop si dispozitive mobile.
Avantaje ale .Net Compact Framework
Hello World – Professional SDK
In acest articol, vom crea un alt exemplu de tip “Hello World”, care va continua articolul precedent, in care am dezvoltat o aplicatie bazata pe Windows Mobile 6 Standard SDK. Exemplul pe care il propun va fi dezvoltat pe platforma Windows Mobile 6 Professional SDK, si va constitui o aplicatie touchscreen. Vom introduce de la tastatura virtuala a dispozivului mobil un text, care apoi va fi afisat prin apasarea unui buton direct pe ecranul dispozitvului.
FILE – NEW PROJECT
Alegem din Project types limbajul Visual C#, categoria Smart Device. In partea dreapta, selectam template-ul din Visual Studio, Smart Device Project.
HelloWorld – Standard device
In articolul precedent, am construit o lista care continea toate instrumentele necesare dezvoltarii aplicatiilor pe Windows Mobile. Dupa instalarea acestora, putem porni la crearea primei noastre aplicatii.
Vom construi un simplu exemplu, de tip “HelloWorld”: afisarea textului introdus de utilizator dintr-un control Textbox.
FILE – NEW PROJECT
Alegem din Project types limbajul Visual C#, categoria Smart Device. In partea dreapta, selectam template-ul din Visual Studio, Smart Device Project.
Flash Drive de 256 Gb de la Kingston
Astazi citesc ca Kingstone a lansat un disk flash de 256 Gb: DataTraveler ® 310, primul 256GB USB Flash Drive lansat în Statele Unite. Nu stiu cum suna pentru altii, insa pentru mine e destul de impresionant. Un astfel de disk (sau stick, mai exact) are dimensiunile 73.70mm x 22.20mm x 16.10mm, cam cat o radiera sau ascutitoare sau 2 tigari! Si stocheaza 256 Gm de date.
google inchide pravalia din china
De ceva vreme tot se vorbeste despre conflictul google-china…
La inceput au fost contre usoare, apoi acestea s-au intensificat, concretizandu-se in amenintari, ca pana la urma sa se transforme in fapte, prin decizia google de a inchide domeniul cn si a redirecta traficul catre domeniul Honk Kong, necenzurat.
Continue reading
Startcraft 2
Starcraft este printre jocurile care mi-au mancat cel mai mult timp “in tinerete”. Multe nopti am pierdut in fata calculatorului, singur, sau in sali de internet cafe, cu prieteni, in razboiul protos – zergo – teran! Astazi (sau mai exact ieri) am vazut ca s-a lansat versiunea 2 (beta) a acestui joc.
Intra pentru a vedea cateva screenshot-uri