WinForms 14 – Komponenty

Niektoré komponenty sme si ukázali už v predošlých dieloch (Timer – Epizóda 6) a iné ako napríklad Process ešte v sérií základov (Epizóda 24), napriek tomu nám ich ešte pár zostáva.

ImageList

ImageList zastupuje zoznam obrázkov. Tento control nemá žiadne eventy, je ho však možné priradiť iným controlom (ako je napríklad ListView) a tie si z neho potom automaticky vytiahnú obrázky, ktoré potrebujú. V už zmienenom ListViewi sa tak použijú ako ikony položiek.

Všetky obrázky sa nachádzajú v jeho vlastnosti Images  a pomocou vlastností ImageSizeColorDepth môžete nastaviť veľkosť a množstvo farieb obrázka.

HelpProvider

HelpProvider poskytuje prepojenie vášho programu Help v systéme windows. Je mu možné priradiť klasický .chm help súbor, kolekciu help súborov .col alebo HTML súbory. Toto mu priradíte v jeho vlastnosti HelpNamespace.

Po pridaní HelpProvidera do formu, sa vo všetkých controloch zobrazia nové vlastnosti. Jedna z nich je ShowHelp on xxx – zobrazenie pomoci na vašom HelpProvideri. Táto vlastnosť povoľuje použitie konkrétneho HelpProvideru. Ďalšie tri vlastnosti sú HelpKeyword, ktorá vyberá kľúčové slovo pre váš prvok, HelpNavigator, ktorý určuje spôsob navigácie v Helpe a nakoniec HelpString, ktorá dáva parameter.

SerialPort

SerialPort vám dovoľuje používať klasické sériove porty vo vašej aplikácií. Jeho tri eventy DataReceivedErrorReceivedPinChanged reagujú na použitie vášho sériového portu.

Rovnako môžete použiť aj metódy ReadReadByte  alebo aj ReadLine. Na zápis naopak použijete Write a WriteLine.

Zo zaujímavých vlastností je tu hlavne PortName, kde vyberáte port ku ktorému sa pripájate a DataBits, ktorá určuje počet bitov prečítaných naraz. Bežne sa používa 8, keďže je to presná veľkosť byteu.

DirectoryEntry a DirectorySearcher

Tieto dva controli slúžia na vyhľadávanie v rámci služby ActiveDirectory. Ani jeden z nich nemá žiadne eventy a tak všetka práca prebieha priamo v kóde programu.

Čítanie samotné prebieha hlavne pomocou metódy FindAll alebo FindOne. Z dôvodu absencie ActiveDirectory v našom testovacom prostredí vám nemôžem dať viac informácií, ak ich potrebujete, tak všetko potrebné nájdete na webe MSDN https://msdn.microsoft.com/en-us/library/system.directoryservices.directorysearcher(v=vs.110).aspx.

FileSystemWatcher

Tento veľmi silný control vám dovoľuje sledovať súborový systém na vašom disku a jeho zmeny. Eventy FileSystemWatcheru priamo súvisia z jeho funkciami a sú to RenamedChangedDeletedCreated. Tieto reagujú priamo na zmeny v zložke (a prípadne aj podzložkách) ktoré ste vybrali.

Vlastnosť FileSystemWatcheru Path vyberá cestu ktorú  budete sledovať. Vďaka vlastnosti Filter môžete vybrať určitý typ súboru, ktorý bude sledovaný a vlastnosť IncludeSubdirectories vyberá, či budú sledované aj podzložky. Efektívnosť takéhoto sledovania je okamžitá a vôbec nezaťažuje procesor ani disk.

ErrorProvider

ErrorProvider vám pomáha informovať používateľa o zmenách alebo chybách v údajoch ktoré zadal.

Cez vlastnosti je možné nastaviť mu rôzne spôsoby blikania (BlinkStyleBlinkRate), Ikonu (Icon) a zobrazovanie sprava doľava (RightToLeft).

Aby ste u neho vyvolali zobrazenie chyby u konkrétneho ovládacieho prvku, stačí použiť metódu SetError, ktorej ako argumenty dáte objekt, pri ktorom sa má zobrazovať a text chyby.

EventLog

EventLog slúži na komunikáciu zo systémovým správcom udalostí.

Vždycky je vhodné mať nastavené vlastnosti Log (väčšinou použijete možnosť Application) a vlastnosť Source, ktorá identifikuje vašu aplikáciu.

Metóda WriteEntry potom slúži na zapísanie eventu. Okrem textu môžete zadať aj druh eventu, a teda či sa jedná o varovanie, chybu alebo len informáciu.

BackgroundWorker

BackgroundWorker je control podobný triede Thread. Ponúka väčšinu rovnakých funkcií, no má aj pár vecí navyše.

Jedná sa hlavne o eventy a to o event DoWork, ktorý nahradzuje Thread.Start(), ProgressChanged, ktorý informuje o zmene stavu a RunWorkerCompleted, ktorý pre zmenu informuje o dokončení práce.

ServiceController

ServiceController slúži na ovládanie a získavanie informácií o systémových servisoch.

Na začiatku mu pomocou vlastnosti ServiceName nastavíte meno servisu, ktorý chcete obsluhovať. Následne v kóde môžete pomocou jeho člena Status zistiť stav servisu a pomocou metód StartStopRestart ho ovládať.

Ak chcete zistiť mená servisov, je to možné pomocou statickej metódy GetServices.

Tak a týmto sme si prebrali všetky ovládacie prvky dostupné v toolboxe. Tým však naša séria ešte nekončí – nabudúce sa pozrieme na Bitmapi a prácu s nimi.

Pridajte Komentár

Vaša e-mailová adresa nebude zverejnená.

Scroll to Top