Josef Pirkl . i, ,"."" 1 - '_ .;, '~ .......ce ene pfiklady v C# V aneb C# praktic v Josef Pirkl v ReSene pfiklady v C# aneb C# skuteene prakticky JosefPirkl ~~ nakladatelstv{ Ccske Budcjovice. 2005 Obsah 1 Resene pflklady v CII aneb CII skutecne prakticky.. 25 1.1 Rozsoh knihy 25 '-;1;DKCKAKNIHOVNA V OLOMOUCI 1.2 Velle .NET5pfildady 25 1-1tl.t.Oqq 1.3 Typogratickekonvence _,_26 1.3.1 Pfekladytcrmlnu 26 1A NekterapravldlapropoufltezdroJovek6dy 27 1.4.1 PravidlaproutitfjmennjchproslOrU(namespace) 27 1.4.2 vysrupypropfiklady 28 1.4.3 Poulitfznatll_.:'vk6du 29 1.4.4 U~fpI'OzaCinajk:fprogramttory! 29 2 Naco ze zakladnich pastupu CII 29 2.1 Pffrazenihodnotpromennym 2!J 2.1.1 Deklaracepl'OfllEnnetypuim5inicializad 29 2.1.2 Deklaraceapfifaz.enipro~nnetypufloatsinicializacf 29 2.1.3 Dcklaraceprom~nnetypuboolsinicializacf 30 2.1.4 PlifdZeniaz~naftttzcovehodnoty 30 2.1.5 Plifazenfhexadecimalnibodnory(~tdctk.ovasoostava) 30 2.1.6 Pfila7.enfprvkuzvyttu 30 2.1.7 PfilazenfprAzd.nerefc:rence 31 2.2 Vetveniprogromu 31 2.2.1 if 31 2.2.2 switch.............•................................................................................... 31 2.2.3 gOlo 32 2.3 Smy~ky .........•.........................................................................32 2.3.1 Pffkazfor 32 2.3.2 Ph1::azwhile 32 2.3.3 Pl'ikazdo while 33 2.3.4 Pl'fkazforeach 33 2.3.5 continue- pkruknismyfky·>skoknauK'ateksmytky 34 2.3.6 break- pfen1k11rsmyfky->6plneukOtKenIsmytky 34 2A Vol6nimetoda pled6v6niporometnJ 34 2.4.1 Pfedavinfparmoeuiimetot13Jn 35 2.4.2 Vyvolinfmelody5paramctryavnk:eoivysledkumetody 35 2.4.3 Pfedanfpolejakopararneuu 35 2.4.4 Vyvolanfmetodysparametryavrl.cenfhodnotypiesparametr(out). 36 2.4.5 Vyvolanfmetodyspar.unetryavnicenfhodnotypfesparametr(reI) . 36 2.4.6 Volantstatickemelodydeklarovaoevjinemjmeooemprostoru 37 3 Pfetafovanioperatoru 37 esc. Lektor: Ing. MiroslavVirius, 3.1.1 Pfetifeoioperoitoru..+"vevlastornovetlidt 38 ()JosefPirk.!.2005 3.1.2 Pfetf!enfoper.itoruproimplicitnfpletypov:\nfnatypint 39 ISBN 81}.7232·265·6 3.1.3 Ptetif.cnfoper.'itonlproexplicitnfpfelypoViininaIypin! 39 8.1.6 2mbiabarvyrodioovskthoobjektu 51 3.1.4 Ptetf!eniopcnitoriltrueI false 40 8.1.7 SkrytiobjeklUnafonnuIali 51 3.2 Indexery(indexers) 40 8.1.8 ZAkazpdceSobjd;lcm-objekIjcviditelnj,1AtazjegraflClcyrozlikn.. 58 3.2.1 Vyt\ottnfjedooduchfhoindexeruvrtmciformulAte 41 8.1.9 Reakccoavstupdopnrku(podporuje-liji.napI.leluovt!pole) 58 4 Prace sinslanciobjekliJ 41 8.1.10 Reakcenavjstupzprvlru(podporuje·liji.napt.teXlo\·tpole) 58 8.1.11 ReakeenazisUnlzaosdeniprvku(fokusu) 59 4.1 Dynamickevytvofenfa zruseniinstanceobjektU 41 8.1.12 RcakcenazlIiluzaostfenIprvku(fokusu) 59 4.1.1 Vytvofeninov~instanceobjektuTImer 41 8.1.13 Zlsk4nivelikostiprvkujakotypRectangle 59 4.1.2 Zru~nlobjekluTimer 42 8.1.14 Control.SctStyleapleps4nfnOlifika~nfmelody 4.1.3 Pouiitiklf~ovehoslovathis 42 ConlroI.OnNotifyMessage() 59 4.2 Pr6ceskonstruktory 43 8.1.15 ZJnenalrunoru 60 42 1 Konsauktors~nimparametrem 43 8.1.16 NoclenIblfZClrU7r.souboru 60 .. ~ fj 4.2.2 SUlockjkonstruktor...........................................•............................... 8.2 8utlan 60 4.3 Testy no typy objektU 44 8.2.1 ZrnfnatexlU113Iiatitku 60 4.3.1 Testnattfduinstanceobjektu(6napledkaobjelctu) 44 8.2.2 Zmfnalextuiobfizkunatlatitkusdefinicijchoz.aro\·nani 61 4.3.2 Testnatfiduinstanceobjcktuajcjiplclyplvinina1.volenouliidu 44 8.2.3 ZmtnabarvytlatilkaponajctimyllazmtnanaAatsty1(.NET2.0). 61 4.3.3 VjpisIypuinstanceobjektu 4~S 8.2.4 ZkdcenfdlooMbolexrutlatftkaadoplnl:nimaky (.NET2.0) 61 4.4 Pfetypov6ni . 8.3 Camba8ax 61 4.4.1 EllplicilniptctypoVdnidoublenaint :~ 8.3.1 NaplnenihodnoldoComboBOllUsaktivadpr'IDlhodnoty 61 4.4.2 PfetypovaruparamelnJsendernatffduBunon .. ID.2 Pfid4nipolotckdoComboBoxulIjcjichsetffdenfdIeabccedy 62 4.5 Deklarocevlastnostf(properties) 46 8.3.3 VyhleddnfhodnotyvComboBoxu 62 5 Prace sudaloslmi 47 8.3.4 NaslavenltypuComboBoxupooleprovybl;rhodnot(zakazpfepisu)62 5.1.1 Dynamicktpfidl!leniu~losti 48 8A DataGrid 63 5.1.2 Pl'id!lenf..iCereudnajednuudAlOSl ····..·············..·· 48 8.4.1 Dynami<.:ktplidinitfipololr.kdoDataGridu 63 5.1.3 OdstraIltnijedDtreakcenaud8IOSIfjsou·1ijiIpfidl!leny) 49 8.4.2 DynamicktplidAnipokdekdoO'dtaGridu,illazeditace 5.1.4 OvlivDtnivjskdkupfesudabl ······..········· 49 dnmehosioupce 63 6 Prace svYjimkami 50 8.4.3 Pfidanit6dkl1.tabulkyproDataGrids podrobol!jMmnasta..enim 64 8.4.4 Dynamickt!vytvofenfviastnihosloupcev DataGridu 64 6.1.1 Qbsluhaobecnt(nckonkremi)vjjimky 51 8.4.5 NastavcnicelthoDataGridupoUleprolten! 65 6.1.2 Obsluhakonkn!tnivjjimky 51 8.4.6 Infonnacc0aktivnfmtiWkuasloupcivDataGridu 65 6.1.3 Zfsk4nibli~"-~ich infonnaci0 vyjimce 51 8.5 CheckBax c 65 6.1.4 VyvoI4nivyjimky ······· 52 8.5.1 Nastavenftelltua1.aSknnutiCheckBoxu 66 7 Prace skonzolf- konzolova aplikace 53 8.5.2 PovolenianastavenitfetiboStaVUChed:.Boxu 66 7.1.1 Vystuptexlunakonzoli : 5~ 8.6 CheckUsiBax 65 1.1.2 Vjsrupnakonzolidotty!fadkl1.pl'eSjedeopf"ikaz.......................•..... ~ 8.6.1 Ptidanltffpolotck.prvnid"~jakowkmult! 66 1.1.3 FonruitovanjvjslUpnakonzoli .. 8.6.2 Prochizenfavjpiszillmurychpolotck 66 1.1.4 Urtenivjstupnlhoproudu(proXmlTexIWriter) 54 8.6.3 Prochazenfavjpisindexii~utychpolol.ek 61 1.1.5 Vymazan!koozolezvolenouban'oo(.NET2.0) 54 8.7 Lobel 67 1.1.6 UkOOCcnipfes<Ctr1+C>-OIkhycenllli,\'esynakonzoli(.NEf2.0) . 55 8.7.1 Zn1b\aleAtulabelu 61 8 Prace skomponenlami zpalely nasirojiJ 55 8.7.2 zamvminltextudoslfeduobjektu _ 67 8.1 Spol8tneprovsechnyvizu61nikomponenty ~ 8.8 LinkLobel 67 Itl.l ~napoziccprvkupfesConlrol.LcftaControJ.Top 5 8.8.1 Zobr.azcnfwwwstninkypokliknu\fnaLinkLabel 61 8.1.2 Zmt'!napoziceprvkupresContro1.Location 56, 8.9 ListBax 68 8.1.3 ZTntnadelkyprvkuplcsControl.W.idth 5n 8.9.1 PfidAnitffpoloukdoLislBoxu 68 8 I4 ZmlnadflkyprvkupfesCootrol.Slze .. 8.9.2 PfidanipoloukdoLislBoxuzpole 68 .. . 51 8.1.5 'Zmfnaban')'plsmaa1.mtnabarryprvkupo7.ad1prvku .. 8.9.3 Pfid4nipolob::k2poleplbvlaslJlOStllilBox.DalaSource 68 8.17 TabControi .........••...••.......................•........................................80 8.9.4 Pfid4nipolo1ek.promfmutfmzesloupcelabulky _..........•..•... 69 8.17.1 DynamlcktpfidioiIffztIo1.ek 80 8.9.5 SI'l'I8Unfdosavadnlchpokd.eLpr;dhtIpolozek 8.17.2 Nasta\-cnfaklivnfz&tty 80 aozoafcnipololky _ 69 8.18 Tex!80x 80 8.9.6 00::tstra0b11druMpolofky 69 8.18.1 NastaveolinicializatDihotextuavSlupdoprvku , 80 8.9.7 Zaoslfenipololkydlehodnoty 70 8.18.2 Pnd!nIvicerMklidovfcelMkO\'tbo(multiline)textboxu 80 8.9.8 Zaostrenlpolo'.kydiehodnoty- vpl'esnemtvatU 70 8.18.3 PfidinfobourolujldchI~tdovfccfadkoveholextOOllU 81 8.9.9 Zobrazenfzvolentpolotkypopoklepanrmy~f 70 8.18.4 Roz.dl!lenff.kIkuTextBoxpomocfobjektupodpory 8.9.10 Poutitfznakutabul4lOruproz.arovnlinIpolorek " 70 regullimfchvyrnzu(Regex) 8\ UslVlew.......................•.........................................•...................71 8.18.5 Vypsanioznatern!hotextu 82 8.10 8.10.1 PfidinfpolofekdoUstView 71 8.18.6 Oznatenf~4stifcltzcevTCJl:lBollU 82 8.10.2 Pfidjnfpolouk.doUstViewao~n{drubtznich 71 8.18.7 OznOCcnfceltholextuajcbovloun!doschn1nkysjchoJillllll.4nlm••. 82 8.10.3 DynamicktplidanfdvouskJupc6arypisdosloupcl1....••.......•.•..-..•• 72 8.18.8 VyvolAnf\-a.lidaceedilaCnihopolc 83 8.10.4 Rcakceoavjb!rprvlru 72 8.19 Toolba......................................•....................•.••.......................83 8.10.5 Oznafcnfcel8Ktf6dk.uvListVIeW 13 8.19.1 Reakcenastiskl.IaOtkanaloolbaro 83 8.\0.6 VfpiswknnutjcbpoIou:k 73 8.20 Track8ar ..................................•....................•...•.......................83 8.10.7 ~utlnavjpisjakonvel.ktikony" 73 8.20.1 lnicializacepcvku 84 8.10.8 ptepnutlDavypisjako.,maltikony" 73 8.20.2 Obsluha~nYhodnotyTrackBar.VaJue 84 8 10.9 PlepnutlDavypisjako..scZJlam" 73 8.21 TreeView .............................................................................•.....84 8.11 MOnfhCalendar , , 74 8.21.1 Napln~nfstromu 84 8.1\.1 07.nateni15.1.2005(skokdo~sfcclednal2(05) 74 8.21.2 ZobrazcnIn4zvuaktivnlpololkystromupokJiknutl 85 8.11.2 Oznxenf15.1.2005symbolemdneJnibodne 74 8.21.3 Obsluhac:ditaeelextupololky51rOmu 85 8.11.3 Oznatenivkednt!viDtervalu3.1.2005- 1.1.2005 74 8.21.4 PfioznOCcntlodznatenfroditovsktbouzlu.YJ'OITiu. 8.IIA ZobrazcnidvoumlslcUvhlddchisloopcfch 74 o~pfirnI!:pot:wnky 8S 8.11.5 Zvjnune:nflffoot!tufnfrnp£smem 75 8.22 WebBrowser(.NET2.0) .........••....•••................••.........................86 ~~ ~~~~.~:.~~.~.:~ ::~.-::~.-::~.-::~.-::~.-.-:~.-::~.-.-::~.:::~.:~~.-::~ ;~ .. 8.22.1 Navigacenaspccifictousutnku _ 86 ••• . . . . . . . . ..-::..-.-::..-.-: 8.12 8.22.2 Navigacenadomo\'skoustrinku _ 86 8.12.\ Nasla eni3Dtypuokraje ·..··· · ··· ·..·· 75 8.22.3 KrokZ~I(0slrinkudozadu) 86 8.12.2 Rolujidpanelsdynamickyvyrvofen9mIlaeitkem 75 8.22.4 Krokdop'ledu(0stninkudopfedu) 86 8.13 Piclure80x...................................................•.............................76 8.22.5 ZisUnizdrojovthokOduwcbovtstffinky 87 8.13.\ Nsflenfobnukuzesouboruajehopfizpusobenf 8.22.6 Ulotenl:kJicntskl!flistiobno.ovkyweoovtstnlnkydosouboru.bmp 87 nsvelik:ostPiclUreBox 76 9 Place snevizualnimi komponenlami 87 8.14 IlichEdltControl.......•...............................................................••76 9.1 EnorProvider 87 8.14.1 Vj.!iwpnezform.lilOvanebotexlU 76 9.1.1 VlZUiInfzvjrazntnfvznikU:chyby 87 n 8.14.2 lUlUpot!'pfidJ.v4ninizntfOllllilovanYcbslovdotextu 9.2 Notilylcon...........•••.........•.....•..•......................•.........................88 8.14.3 VjSlUPRTFleJltu-poufitfboldaitalicfoomnafastteXlU n 9.2.1 JednodlXhyplt'kladNotifylcon 88 8.14.4 UlofeniRTFteJllUdosouboru 77 9.3 PedormanceCounter......................................•...•...........•......•.WI 8.14.5 NabcniRTFteXIU~souboru 78 9.3.1 Dol:azoavolnouparnl'fvMB 89 8.14.6 Povokniazprnoov4nIpoklepunaodkaz 78 9A Pracess ..•.............•.................................................................•••WI 8.14.7 .Vyhlcdll.nfhodnOlY 7: 9.4.1 Pokus0spu~ltnrprncesunmepad.exc 89 8.15 RadloButton 7 9.4.2 Spu~lenfnOlepad.elleafcklinlnavstup 90 8.15.1 Oznaeenfpfepinafeprogramovi 78 9.4.3 Ukonten!spu~tentaplikllccpomocfcllistujidboprocesu 90 8.16 StatusBar 79 9.5 5efVIce<:ontroiler...................................................................•••90 8.16.1 tipravalextuvpcvnlmoddflu 79 9.5.1 ZisUn!seznamuexistujidchsluJ.cb 90 8.16.2 DynamicktpfidAnftffDOrychoddflG 79 9.5.2 ZjisltnfstavuslufbY.jejflllSllIvenfaspu~li!ni 91 11.2 Speciolnidiology ., " " ,,.•, 105 9.5.3 Vypiszavislychslufeb 91 11.2.1 DialogprovjllCrbarvy 105 9.6 Tmer 92 11.2.2 Dialogprovy~rpfsma lOS 9.6.1 ZobrazenifasunaformulUi 92 11.2.3 DialogproryllCrsouboru 106 9.6.2 DynamickCvytvofen£Timernnafonnuhifi 92 11.2.4 Naslavcnivicena~bofiltruprovyllCrsoub0r6 107 9.7 TooIrlp ...................................................................................••..92 11.2.5 Diaiogprovjbtradres4fc 1(J7 9.7.1 Nasavenfvkctidko\'eholOOltipu 92 12 Drag 8< Drop ("fohni a pU_r') 108 10 Proce _formulofl 93 12.1.1 TafenitexlUzprvl::uTexl8oxudolistBoxu 108 10.1.1 Metoda\'olanfibezprosttedno!pfedzobrazenimformulMe 93 12.1.2 TafenfsoubooildstupcudoformulMe 109 10.1.2 Nastavenftzv.Cancelt1at!lkaproformulU 93 13 Proce _klove_nic; 109 10.1.3 Naslawnitn.AccepItlac!flkaproformulaf 93 13.1.1 Rea1:cenastisknutoukltvesu 110 10.104 ZisUniidenlifikX'nihofislaokna 94 13.1.2 Testodnistiskukla\·esy<Shift>+znaku 110 10.1.5 vypisj~naaktivnIhofonnulMe 94 13.1.3 Tcstovtnfstiskuk1.1ivesy<Shifl>+<All>+znaku 10.1.6 Zjiltti!nfaktivnfhoprvkuformulMe 94 :r.apomociKeyEvcnlArgs 110 10.1.7 NastaveniformulMelak,abybylddy.JJllvrchu" 95 13.1.4 Testovanistiskuklil.vcsy<Shift>+<All>+znaku 110 10.1.8 MaximalizaceaktivnfhofonnulMe 95 13.1.5 Pnkeskllivesamivkoozolov~aplikaci 1II 10.1.9 Minimali7xeaklivnfhoformulMedoliltry 95 14 Proce _menu 112 10.1.10 SkrytfformulMepominimalizaci 95 10.J.lI ZaUzaniuzavfeniformulil.1'e . 95 14.1.1 Dynamicktvytvofenfhlavnfhomenuformulateajebopolo:!ek 112 10.1.12 ProcMzeniv~hprvkunadanl'!mrodi.::i(formulil.li) 96 14.1.2 Pmgrdffiovc!vyvollinfkontcxtovl'!homenu I13 10.1.13 ProcMzenivkchprvkClIYPuButtonnildanemrodifi(formulMi) 96 14.1.3 Zmena(idajiJuprvn!polotkykonlexlovchomenu 113 10.1.14 Dynamickcvytvorenlprvkunafonnul;l.fi 97 14.1.4 Reakcepoloftymenunastisk- prohozenipffznakuz.dkmutf 113 10.1.15 Postupnezobrll7:enfformulatepomocfzmenyjehoprUhlednosti 97 14.1.5 Zryrazn~nfurtilc!poJofkymenu 113 10.1.16 Defioovanfnov!!:hoIvamfonnulMepfc.~Form.OnPaint 98 14.1.6 Vyvolil.nfakcepo.JJajetr·napolotkumenumy~ineOOkllivesou 114 10.2 Vyvol6v6nimodalnichanem0d61nichformul6fU 99 14.1.7 Pfipojenikontextovc!homenukprvkuikonyvMlf 114 14.2 CcntextMenuStrip(.NET2.0) 114 10.2.1 VyvohinimodaInihofonnulMe 99 10.2.2 vypishodllOlyICxto\~hopolezvy\'olanihomodalnihoformulate 14.2.1 Vytvoknimenu.plidlinfobsIuhyazobrazenfnadvolajldmtlalStketn 114 pojeboukorK'cnf 99 15 Proce 59 schronkou (clipboard) 115 10.2.3 Zobnucnidialogujatonell'l<XWnihookna 99 15.1.1 KopirovamlCxtuzTexLBoxudoschrinky 115 10.3 MOl cplikace/MOI detska c1tnc 100 15.1.2 KopirodnftextuIeschr.inkydoTextBoxu liS 10.3.1 VytvolenfMDldflSkthookna 100 15.1.3 Testnapi'ftomDOSltexto\!!:hoformfitu\'eschrtnce 115 10.3.2 SeznamMDIdtIskycbokendopllollymenu 101 15.104 Kopieinstaoccobjd:tudoschrtok.:y/zeschninky 116 10.3.3 PfistupkaktivnimudllSl::~muobu 101 16 Pole a kolekce objekliJ 117 10.3.4 Zjiltti!niMOldttskychokenformulate 102 16.1 Pcle(cncy) ...................••......•..................................•.............117 10.3.5 Zaostfenidruhthodi!l~kebooknavseznamu 102 16.1.1 Vyt\'ofeniainidalizacepoleotfechprvcich 117 10.3.6 Sei'azenidtlSkjchokendokasUdy 102 16.1.2 VytvoleniainicializacepoleColor[] 117 10.3.7 Semcnidttskychokendoborizontl1lnichdlafdic 102 16.1.3 VytvofeniainicializacepoletypuPointO 117 10.3.8 SemcnfdtlSkychokendovcniUlnichdlrldic 103 16.1.4 Dynamick!!:vytvofen{pole(ph.~Army.CreatelnslanceO) 118 10.3.9 Scl'azcnfminimaJizovanychdttskychoken 103 16.1.5 Vfccrozmi!ll'l6poleavnkenfpoi:!lufOzrOCrUpoJe 118 11 Pfeddefinovane dialogy 104 16.1.6 lnicializaceprvkupolenazakladevolanemetody 118 11.1 Standardnidialogy ,.." """""..,., 104 J6.1.7 Vymazanipole tl9 11.1.1 Vypistextudodialogu 104 16.1.8 Kopieprvkuzpoledopole 119 11.1.2 Vypislextu(vdialogu)naviceH.dek 104 16.1.9 Klonovanfpole- kopiepoledonovevytvotenehopole 119 11.1.3 DotazovydialogAnolNe 104 16.1.10 VzestupneascslUpnc!sclffdi!nfpole 120 16.1.11 Prohl~vanfpole 120 16.2 Kolekceprvku(ArrayUst) ......................................•.............. 121 17.1.29 Dotaz,ldajeprvnfznakfeti!zcevelkcpfsmeno 134 16.2.1 Vyt....oI'enrkolekccprvldl............................•......................•.............. 121 17.1.30 Vjpisuvozovel::vfeltzci 135 16.2.2 Hled4nfvkolekciprvkil.....................................•.................•........... 121 17.2 SlTIng8uilder.....................................•••...................................135 16.2.3 Binarnrvyh~v4ni 122 17.2.1 Vytvoleniaptid!nitextudoString.Builder 135 16.3 Franta(queue)..........................•...............................•..........•. 123 17.3 Pr6cesdatema cosem 135 16.3.1 pfid!niprvkUdofronryavjberzfronry 123 17.3.1 ZjiSlfniaktu1lnJhodatumuatasu 135 16.4 Zcisobnik (stack) 124 17.3.2 Vytyotcnidatumuzjednollivjchprvkildata 136 16.4.1 Zalolenfz.Asobniku,vy~rhodootaprochazcnfprvku 124 17.3.3 Test.utasoutasnyrokjepkstupny 136 16.5 Hosovocitabulka ·······..· 124 17.3.4 Vr.icenijrnfnaakluliln.ltasovtwny(proMfnycas) 136 16.5.\ UUzkapnkesha.sovacftabulkou 12j 17.3.5 Vnkenfjmcnaaklutilnftasovcwny(proIClnil!as) 136 16.5.2 HaSovacrk6d(ha~hcode) 12j 17.3.6 Zji~ttnf.zdajevpl'edantmdatuaktuMnf1.6nyufivtinlelnftas 136 16.5.3 Pfepsll.nfGelHashCodcO 12j 17.3.7 Rozkladaktutilnfhota~unahodinu.minuluavtefinu 137 16.6 SortedList(.NEl2.0)........................................•....................... 126 17.3.8 Pfidtinfdanl!hopol:lUdnfkdatumu 137 16.6.1 Zalofeniscznamu.vlofcnfhodnotavybledanfhodnotydieklfte..... 126 17.3.9 Ziskanfdalumuz1elfzce 137 17 Prace 5 datoy'fmtypem felezec, datum,y'fcel 17.3.10 Zfonruitovlinldatumudlcmasky 137 17.3.11 Pfiprnve~melodyprofonrul.tovll.nfdataacasu 138 a slruktura 127 17.3.12 Pokus0pttvodfetl!zcedodarumuvotilivanycbfOfl'lUitech 139 17.1 Pracesletezcl..............................•············...................•......... 127 17A TImeSpan.............•...•...•.....................................................•....139 17.1.1 Pfifazenipni7.dnehofettz.ce 127 17.4.1 Pricesrozdnemd\"OIIdatumu 139 17.1.2 Inicializacefetb.cezp.>IemaWchartI 127 17.4.2 Zisktnfintcrvaluodzatatkudokonce\'oIAnl 140 17.1.3 Prevodfel!zcedopolechart] 128 17.5 PracesvY~tavYmlypem 140 17.1.4 Spojenfprvk(lpoledofet!zceajejichodd8enispocir~kt!zcem 128 17.5.1 Deklarnccvjttuapromtnnetypuyytel 140 17.I.j VytvofenidanChopofrustejoych7.nakiJ 128 17.5.2 PauliliORoperlilonlpronastayenfvicehodnotvjcru 140 17.1.6 Zji~fdtlkyfrtt7.ce 128 17.5.3 Naslavenfbilovychhodnotdopromtnnc!ajejichlesloyiin! 141 17.1.7 ProchAzenffelb.cepojednollivjchznacfch 128 17.5.4 Odnastavenfbilo\"chodnOly 141 17.1.8 Vnk:enieastil'ethce 129 17.5.5 ProcMzenfprvkllvyctu 141 17.1.9 Vyhlcdll.n!poziceprvnfhovyskytupodret~zcevret!7.ci 129 17.6 Pr6cesestrukturomi 142 17.1.10 Vyhlcdlinfpoziceposlednfhovyskytupodl'ethcevl'el~zci 129 17.6.1 Dcklaracestrukturyllpromt!nncstruktury 142 17.1.11 Vyhied&1£slovaod~tkudovyskytujedoobov:.seznamuznakd 129 18 Pfevody a zaokr6uhlovani 143 17.1.12 Poutit{String.FonnatO 130 18.1 Plevody .............................................................................••...143 17.1.13 DamfonnlitovanfvysrupupfesSlring.FormatO ··· ·········· 130 17.1.14 Rozdl;lenfklfzcedleOlW'lovaftl 131 18.1.1 Pfeyodfetb.cenaBslo 143 17.1.15 Pfcvod10gickthodlJOlynafeti!zec 131 18.1.2 Pfeyodzfetb.cenaboolean 143 17.1.16 Tesloashodnoslfell~lJdi-'·clilc05lpfsmenrozbodujc 132 18.1.3 Pfe"odrelfzcenadouble 143 17.1.17 Testoashodnostfclfzdl:- \'e1ilc051pfsmennerozhoduje 132 18.1.4 PfevodhodOOlydodyojkovc.osrnitkoytaJestnOCtkovcsoustavy . 143 17,1.18 Preyodfet!zcenamallipismena 132 18.1.5 CHetfenfchybnehopfe\'odu 144 17.1.19 Pfcvodfel!zcenaydUp\smena 132 18.1.6 Binamiposuo-posunutihodnoty0 dvabilydolevlI 144 17.1.20 Nahradatastifelfzcezajiny ······ 133 18.2 Pfevodysourodnic 145 17.1.21 Cktstrani!nfmezcrzpoflitkuakoncefeti!zce 133 18.2.1 Pfevodsoul'adoicevnimciprvlrunasoul'adniceobrazovky 145 17.1.22 Odstra~nlspecifickychzoakdzpOClitkuakoncefeli!zce 133 18.2.2 ~vodsoufadnicobrazovkynasoufadniccvrlimciprvku 145 17.1.23 Testnaznakynakoncifettlce · 133 18.3 Zaol<'ouhlavani.................................................................•.... 145 17.1.24 Odstran~niposlednfhoznakuzfeli!zce 134 18.3.1 Zaokrouhlenfnadanypateldcselinnychmist 145 17.1.25 Dotaz.zdajeprvn!znakfeltzceplsmcno 134 18.3.2 ZaokrouijleofnaoejbliUlnimcell!tisl0 146 17.1.26 I)o(az.zdajeprvnfmakfeltzcetislo 134 18.3.3 Zaokrouhleninanejbli.mvyUfccll!cislo 146 17.1.27 Dotaz.zdajeprvnfmakfettzcetlslonebop!smeoo 134 18.3.4 Nastaven!hodnoty•.rdlnekllldnencl::o~no"doIypudouble 146 17.1.28 Dotaz.zdajeprvni:makfettzcemalcpismeno 134 20.8.3 Uk>lc:nIdal.............................•.............................................•........... 159 19 KOdovani 146 20.8.4 PfidMIino"ehol..nnamudotabulkyZAMESTNANCI 159 19.1.1 PtevodznakunaASO(!£sclnohodnotu 146 20.8.5 Smaz:\nff:idk6 tabulkyZAMESTNANCI slD~MESTNANEC 19.1.2 PtevodtiselneASCIIhodnOlynaznak 147 v!t.~fmncf3 160 19 1:1 PfcvodUNICODEnak6dovanfASCII(apfevodtethcenabyle[j)147 20.8.6 Proch:i7.enfH.dkCla~nahodnOlkalkulafnlhosloupce 160 19:1:4 Vytvofenlrettzccl.polebytelIp0/110dUNICODEk6doY4nf ....•.... ~; 20.9 Novllzanidol (datablnding) 16) 20 Prace sdatabcizi 1 20.9.1 Vyn'olen'novtdatabindingvazby- navWnfhodnorypole 20.1 Datovaspojeni(OleOS) 148 doTextBox.Texl 161 20.1.1 Otc\'fenlspojen[ 148 20.9.2 ZlsUnfmanageraproobsluhuvazcb 161 20.I.2 ROcIeaDkcbcCnoannzcmcttinoun.~St1aavtueCsphoajncgnef-ud1l.!ost '" 14.9 L 2200..99..34 PPOoSsUunIInnaanpafesldecdhuojzfclrvvfflluU 116622 ~:~:~ ~":;::~~~~~;.~U;~~.::::: 20.9.5 Reakccnazml!nupoliceBindingmanagera- vypisakluAlniho NdkudoLabel 162 20.1.5 SeZllamvkchtabulckpodspojcoim ISO 20.9.6 Vytvolenfvazbysmo1nostffonnatovanfvjsrupu 163 20.1.6 SCZllaJnufivatclskychtabulekpodspojenim····················b··:··k··········· 150 20.9.7 Vylvofcnfvazbynapole 163 ;~:~:78 Sc:zllamvkchtabolekpod~pojenfmSupfleasblIu!In~rammitypu0 ~e IU •••.• ISO 2O.)Q P,acesdalyV .NET2.0 164 VypisseznamuvkchsloupcOnadvkmi podspojcnlm.. 20.10.1 NapojenfdatnaBindingSource 164 '019 N ~nlseznamoex;stujlclchtabulekpodspo,Jenfm 151 20.10.2 Zlikazpridav!n{ntdku- nastaven{ptesBiDdingSource 165 - . . ap • 151 20.2 Datovjadapter......•........................•.........: 151 20.10.3 PouEIiBinding.'1avigalor......................•.......................................... 165 20.2.1 OIeyfenfadapltroanaplnbtfdodatoytmnofiny 151 20.10.4 ZaostlenfspecificktbudkylabulkyDataGridVJew 166 20.3 Datov6mnof.lna(DataSet).......................................•............ 20.10.5 OZlIaeenJ"aprilcbodf:!dk6DataGridView(olJlOCenfcelychf:idku) . 166 20.3.1 Napln!nidatOytmllono)'"I.adapt~ruanapojenfdoDataG~du 151 20.10.6 OznaeeniapnkhodbuntkDalaGridView 166 20.3.2 Naplnt!nldaloytmnonny"l.adaptcruanapojcnldoDataGndu 20.10.7 Pfid;inftlafftkanamfslodruhehosluupcev DataGridVic:w 167 _variantaspojmeoovanfmtabulky 152 20.10.8 ReakccllaslisktlaCitkav(}.ttaGridView 167 20.3.3 VytvofenfXMLsouboruzdatdato", mnoIi·ny : ... 152 20.10.9 Pfid.in{fixov~hoComboBoxumezisloupcel>.ttaGridVic:w 167 203.4 Naetenfprvnichtfff3dekdodatovtmnofinyavraccniJakoXML "11~ 21 Regularniv'frazy 168 20A DatovatabUlka(DataTable) .. 21.1 Duleiitez6stupneznokyprovyhodnocovoni '041 Odkaznatabulkuzdato\"tmoofiny ·········· 153 regul6mrchvjrozu , 168 _.. ID 20.4.2 yYpispotlUf:idktitabulky 153 21.2 TestynoplatnostyYrozu (odpovfd6 masce?) 169 20.4.3 Prochlizenlf:idk6labulky . 21.2.1 Hledanfnaltradouzaznak 169 20.4.4 ZmenanadpisuproDataGrid :: :: 154 21.2.2 Testdkprvnlhoznaku 170 ~~vj~:~~=~~:~~:.~.~~~.:: ~:: ~:: ~:: ::.11~ 21.2.3 Hledinftetl:y 170 20.5 21.2.4 PovolenlvicepHpustnychznaku 170 20.5.2 Prochll7.enfrysledkudotazu(proch!zenivdcenycbhklkddotazu).. 154 2>'3 Rozklady regularnich yYrazu doyYskyitl (Match) 170 20.5.3 Dotazsparamctry 155 21.3.1 Rozktadnnjedllotliveznaky,ktcrenejsoomezerou 170 ~na 11~ 20.5.4 vdatcl.:hpfesdat?vypl'ikaz ················································.. 21.3.2 Rozkladnajednotliveznak)'/slova,klemnejsoumezerou 171 20.6 Datoverelace(DatoRelation) ........•.............•.....................•. 156 21.3.3 Vniccn{znakUfettl.ce.zakterjmijemezera 171 20.1 -~D.a6t.oIveRsetloacuepmceeritabulkamiavysrupdoDataGridu ..151 2211..33..45 SReopzaldraacdelIhaojdeidonzoftleht!'czczcnaky/slova.zakterjmijemel.cra 117712 _ 7 I Vytvofenfkall:ulocnihosloupcespevntnastavenouhodnolOu 157 21.3.6 Separacedalumuzfet!zcc......•......................................................... 172 ~2200~...77..32 . VVyyItvvooffeennfflklaallkkoullaaif::nnfihhoosplooluepscreetnfzal.l:oAykOlUad!fufnuknckfce .111555877 21A 2R1o.4z.1klodRorezkgluadl6darntufmchuavfajsruaszvuyus'-ivtfymusikituipminskupln (Group) 111723 20.8 Editocedot(update, insert. delete)·······················,::···G···:d..)· 158 _ 8 I Proch4z.enifadk6tabulky.klerebyly~ntny(zdepleSv"la n 158 '2:;0V..8.•2 DogenerovanIUPDATE.INSERT.DELETEpftkazu .............•....... 22 Funkce 17~ 23.6.5 Kresbavyplnlneelipsy 182 23.6.6 Kresbakruhovery5de 182 22.1 MatematiCkefunkce 17 23.6.7 Kresbakrubovevjsei!evyplnt~ectvenoubarvou 183 22.1.1 Vniceniabsolutnfhoc\noly t13 23.7 Kresba.grafickeho"textu .............................•...................... 183 22.1.2 PoutitikonstantyPl ············· 17~ 23.7.1 Jednon\zovevykreslenigraflCkEhotextu 183 22.1.3 Vr.iccniminim!lnlbodnolyzcdvoufuel ·········•..···· 17 22.1.4 Vricen{minimalnlhodnQlyzettl'fisel ························ 114 23.7.2 JedllOl'lizovevykreslenfgrafickeho.,poolofenehoM lexru 183 23.7.3 FomWovanlrysrupugrafickeootexru-centrov4nl'dostteduoblasti I84 22.1.5 Vnkenfodmocnin.yz~odnoty :~44 23.7.4 Vykreslenfvertik41nfhografickehotexlU 184 22.1.6 VracenihodnotySlnUuhlu . 23.7.5 Vykreslenftexrudorimefku.:lm~fenlvelikostigrafickehofetlzce.. 184 22.1.7 CelocfselnedtlenrazisUnizbytkupocelocisel~mdl!lenf 174 23.B Obr6zky .....................................•.........................................•. 185 22.2N6hodn6 ~islo...............................•......................................... 175 23.8.1 Natlenfbiunapy:zesouboru 185 22_?.I GenerovaninahOOM:bofislavdantmrozsahu 117755 23.8.2 VykreslenlbiunapynaformulM 185 n- 22 "-'-nerovininihodnibo~slamezi0.0-1.0 I. n 23.8.3 Dynamiclr:ekreslenidobilJDapy 185 23 Prace sgrafikou . 23.8.4 DynamickCkresknidobilmllpy-dalMvarianla 186 23.1 Fanly......•..................•.....•...............•.................••.................... 1,~~ 23.8.5 Jednooizovevykreslenlobrizlr:uveskuletnevelikosti 186 23.1.1 Tvorbainsumcel\O\'ehofootuTahoma . 23.8.6 Jednonizovevyheslenfobdzku IOxzmenkneho 186 23.1.2 Tvorbainstaneenovehoimplicitnfhofonru 176 23.8.7 Olofenfobrizku 187 23.1.3 z.mtnafontuobjektu :~: 23.8.8 Klonov;1nfobnWcu- vytvofenfnovehoobr.il.kuzM~lijineho 187 23.1.4 Vrkenivy~kyfontu . 23.8.9 SiJanCvykreslenfobcizku 187 23.1.5 Prochlizen{jrncninstalovanychfomu(.NET2.0) 1;; 23.8.10 Nafteniobr:iz.kuprespolebyle[],vytvofenidatoveho 23.2 Borvy 1 prouduMemoryStream(.NET2.0) 188 23.2.1 Vyhled!nfbarvydlejmena :~~ 21.9 Osfatnlkolem grafiky.....................................•...............•....• 188 23.2.2 Pfisrupksystemovjmbarvim 7 23.9.1 Pfeps4nfmetodyForm.OnPaintO 188 23.2.3 VytvotenlnovebarvyzpalelyaobarvenifonnulMe 1: 23.9.2 Pfek:re:slenfbarvyceletJoobjektu 189 7 23.3 Pero(pens) ......•......•.....................•..................•.....................1 23.9.3 Vykreslenfobrazce5gradientnimvzorem 189 23.3.1 Vytvoh:nffcrl'enehopen 178 23.9.4 Zadinisoufadnicprografilr:uabsalumfhodnocou 190 2332 VyufilipleddefUlOVaneoopera 178 23.9.5 SjednoccnfaprO.nikd\"OUoblastf 190 23:3:3 Vytvofen{fcrvenehopfcro~vaneh..ope~0 mce5~u 178 24 P,ace sadresafl 190 ;;a::fe:.=~~.~.~.~.~~.~~.~.~.~~~~~~~~~ 24.1.1 Zalofen{adresAfe 190 23.3.4 179 24.1.2 KontrolaexistenceadresMeapHpadnezalofenInoveho 190 23.4 Sfetce(brush) ..............................•....................•....................179 24.1.3 Naplni!nfsezn!lmulogickypfipojenychdiskovychjednotek 191 23.4.1 Vylvol'enf~tltceplnehovzoru 1~9 24.1.4 Informaceoadre$Mi 191 23.4.2 VyuEIIpleddc:finovaneho~tl!tee 1/ 24.1.5 Pfesunadresafe 191 23.4.3 Vytvoleni~ttlcesevz.ori:em I 9 24.1.6 Smazinfadn:sateis~ 191 23.4.4 Vytvoleni"apoufitfgradien.ullho~lce ~~ 24.1.7 Vnicenfak:tivnfho~ 191 23.4.5 Vylvoleni~lcediedalzblunapy .. 24.1.8 ZnlI!naaktivn1bo~ 192 23.5 Kresbacar 180 24.1.9 lnfOfltlOCCoZlTlC!ni!vadre:sifi 192 23.5.1 VykreslenfeUy : I~ 24.1.10 InformaceownfsttnIspeci.tlnkhadresMU 192 23.5.2 Vykreslenfv{ceMrjednimpl'ikazem(diepolePomt(J) 18 24.1.11 Vypsanicestyksystemovemu(system32)adresMi 193 235.3 v kreslenffAryo~ifce5boduse~ipkounakonci 181 24.1.12 Vypsanicestyprouk.lMmiaplikacrlfchdal-prov~hnyufivatele 193 23.6 ~;::~lbY ~e~~~~~~ug.~.~.~.~~~~~~.~~~ ~~~~.:~.·.::~.·.::~.·.:::~.:::~ ::.11~ 24.1.13 Vyps4nieestyprouklManiapliltafnfchdat-prokonkrttnihoufivatele .. 193 ..::::::::::::::::::::::::::::::.:.:::::::::::::::::::::::::::::::::::::::::::::::::: 25 Prace se soubory 193 23.6.2 KresbanirneI!.kUvyplnenehofervenoubarvou ::; 25.1 Obecn6pr6ce58saubary 193 ;i:~:~ =~;~ 25.1.1 Informaceosouboru ~ 193 182 25.1.2 Testodnfatributusouboru re;~~' 193