Programmēšana uzlabotās Winforms C #

Šajā C # programmēšanas apmācībā es koncentrēšos uz uzlabotajām vadības ierīcēm, piemēram, ComboBoxes, Režģi un ListViews, un parādīšu veidu, kā, visticamāk, tos izmantosit. Es nepieskaros datiem un nesaistu tos līdz vēlākai apmācībai. Sāksim ar vienkāršu vadību - ComboBox.

Kombo centrā ir priekšmetu kolekcija, un vienkāršākais veids, kā to aizpildīt, ir nomest kombi uz ekrāna, atlasīt rekvizītus (ja nevarat redzēt rekvizītu logus, augšējā izvēlnē noklikšķiniet uz Skats un pēc tam uz Properties Window), atrodiet vienumus un noklikšķiniet uz elipsēm pogu. Pēc tam jūs varat ierakstīt virknes, sastādīt programmu un novilkt kombi uz leju, lai redzētu izvēli.

Tagad pārtrauciet programmu un pievienojiet vēl dažus numurus: četri, pieci. līdz desmit. Palaižot to, redzēsit tikai 8, jo tā ir MaxDropDownItems noklusējuma vērtība. Jūtieties brīvi iestatīt to uz 20 vai 3 un pēc tam palaist, lai redzētu, ko tas dara.

Tas ir kaitinoši, ka atverot to saka comboBox1, un jūs to varat rediģēt. Tas nav tas, ko mēs vēlamies. Atrodiet DropDownStyle īpašumu un mainiet DropDown uz DropDownList. (Tas ir kombinēts!). Tagad teksta nav un to nevar rediģēt. Jūs varat izvēlēties vienu no numuriem, bet tas vienmēr tiek atvērts tukšs. Kā izvēlēties numuru, ar kuru sākt? Tas nav īpašums, kuru varat iestatīt projektēšanas laikā, bet, pievienojot šo līniju, tas tiks izdarīts.

instagram viewer

Pievienojiet šo rindu veidotājā Form1 (). Jums jāskata veidlapas kods (risinājumu pārlūkā ar peles labo pogu noklikšķiniet uz From1.cs un noklikšķiniet uz View Code. Atrodiet InitializeComponent (); un tūlīt pēc tam pievienojiet šo rindu.

Ja iestatāt kombināta DropDownStyle rekvizītu uz Vienkāršs un palaižat programmu, jūs neko neiegūsit. Tas neizvēlēsies, nenoklikšķinās un neatbildēs. Kāpēc? Tā kā projektēšanas laikā jums ir jāapņem apakšējais stiepes rokturis un jāpadara visa vadība garāka.

2. piemērā esmu pārdēvējis ComboBox uz combo, nomainījis Combo DropDownStyle atpakaļ uz DropDown, lai to varētu rediģēt, un pievienojis pogu Add, ko sauc par btnAdd. Esmu divreiz noklikšķinājis uz pievienošanas pogas, lai izveidotu notikuma btnAdd_Click () apstrādātāju un pievienotu šo notikumu rindu.

Tagad, palaižot programmu, ierakstiet jaunu numuru, sakiet Vienpadsmit un noklikšķiniet uz Pievienot. Notikumu apstrādātājs ņem jūsu ievadīto tekstu (kombinētajā tekstā. Teksts) un pievieno to Combo priekšmetu kolekcijai. Noklikšķiniet uz Combo, un mums tagad ir jauns ieraksts Vienpadsmit. Tādā veidā jūs pievienojat jaunu virkni Combo. Lai noņemtu vienu, tas ir nedaudz sarežģītāk, jo jums jāatrod tās virknes indekss, kuru vēlaties noņemt, pēc tam noņemiet to. Lai to izdarītu, tālāk parādītā metode RemoveAt ir savākšanas metode. jums vienkārši jānorāda, kurš vienums parametrā Removeindex.

noņems virkni pozīcijā RemoveIndex. Ja kombo ir n vienības, tad derīgās vērtības ir no 0 līdz n-1. 10 vienumiem vērtības 0..9.

Ja tas neatrod tekstu, tas atgriež -1, pretējā gadījumā tas atgriež virknes indeksu, kura pamatā ir 0, kombinētajā sarakstā. Ir arī pārslogota FindStringExact metode, kas ļauj norādīt, no kurienes sākat meklēšanu, lai jūs varētu izlaist pirmo utt., Ja jums ir dublikāti. Tas varētu būt parocīgs, lai sarakstā noņemtu dublikātus.

Noklikšķinot uz btnAddMany_Click (), teksts no kombināta tiek notīrīts, pēc tam tiek iztīrīts kombinētās preces kolekcijas saturs, pēc tam tiek izsaukts kombinētais. AddRange (lai pievienotu virknes no vērtību masīva. Pēc tam iestatot kombināta SelectedIndex uz 0. Tas parāda pirmo elementu kombo. Ja jūs pievienojat vai dzēšat vienumus ComboBox, tad labāk ir sekot, kurš vienums ir atlasīts. Iestatot SelectedIndex uz -1, tiek paslēpti atlasītie vienumi.

Poga Add Lots notīra sarakstu un pievieno 10 000 ciparus. Esmu pievienojis kombinēto. BeginUpdate () un combo, EndUpdate () aicina ap cilpu, lai novērstu jebkādu Windows mirgošanu, kas mēģina atjaunināt vadību. Manā trīs gadus vecajā datorā 100 000 numuru pievienošanai kombo ir nepieciešams nedaudz vairāk par sekundi.

Šī ir ērta vadība tabulas datu parādīšanai bez režģa sarežģītības. Vienumus var attēlot kā lielas vai mazas ikonas, kā ikonu sarakstu vertikālā sarakstā vai visnoderīgāk kā vienumu un apakšpozīciju sarakstu režģī, un to mēs šeit darīsim.

Pēc ListView nomešanas uz veidlapas noklikšķiniet uz kolonnu rekvizīta un pievienojiet 4 kolonnas. Tie būs TownName, X, Y un Pop. Iestatiet katra ColumnHeader tekstu. Ja ListView virsrakstus neredzat (pēc tam, kad esat pievienojis visus 4), iestatiet ListView skata īpašumu uz Detaļas. Ja skatāt šī piemēra kodu, pēc tam pārejiet uz leju, kur norādīts Windows Form Designer kods, un paplašiniet reģionu, kurā redzat kodu, kas izveido ListView. Ir noderīgi redzēt, kā sistēma darbojas, un jūs varat nokopēt šo kodu un pats to izmantot.

Katras kolonnas platumu var iestatīt manuāli, pārvietojot kursoru virs galvenes un velkot to. Vai arī varat to izdarīt kodā, kas redzams pēc formas veidotāja reģiona paplašināšanas. Jums vajadzētu redzēt šādu kodu:

Iedzīvotāju slejā koda izmaiņas tiek atspoguļotas projektētājā un otrādi. Ņemiet vērā: pat ja iestatāt rekvizītu Bloķēts kā patiesu, tas ietekmē tikai dizaineri un izpildes laikā varat mainīt kolonnu izmērus.

ListViews ir arī vairākas dinamiskas īpašības. Noklikšķiniet uz (Dynamic Properties) un atzīmējiet vajadzīgo īpašumu. Ja iestatāt rekvizītu kā dinamisku, tas izveido XML .config failu un pievieno to risinājumu pārlūkam.

Izmaiņu veikšana projektēšanas laikā ir viena lieta, bet mums tas tiešām jādara, kad programma darbojas. ListView sastāv no 0 vai vairāk vienumiem. Katram vienumam (ListViewItem) ir teksta rekvizīts un apakšiedaļu kolekcija. Pirmajā kolonnā tiek parādīts vienuma teksts, nākamajā kolonnā parādīts SubItem [0] .text, pēc tam SubItem [1] .text un tā tālāk.

Esmu pievienojis pogu, lai pievienotu rindu un pilsētas nosaukuma rediģēšanas lodziņu. Ievadiet jebkuru vārdu lodziņā un noklikšķiniet uz Pievienot rindu. Tādējādi saraksta skatam tiek pievienota jauna rinda ar pilsētas nosaukumu, kas ievietots pirmajā kolonnā un nākamajās trīs kolonnās (Apakšieraksti [0..2]) tiek aizpildīti ar nejaušiem skaitļiem (pārveidoti par virknēm), pievienojot šīs virknes viņiem.

Tagad iestatiet īpašumu ListView Multiselect par nederīgu. Mēs vēlamies atlasīt tikai vienu vienību vienlaikus, lai gan, ja vēlaties noņemt vairāk vienā piegājienā, tas ir līdzīgs, izņemot to, ka jums ir jāmēro apgriezti. (Ja cilpa parastajā secībā un izdzēšat vienumus, nākamie vienumi nav sinhronizēti ar atlasītajiem indeksiem).

Labais klikšķis izvēlne vēl nedarbojas, jo mums nav neviena izvēlnes vienuma, ko tajā parādīt. Tāpēc ar peles labo pogu noklikšķiniet uz PopupMenu (zem veidlapas), un formas augšpusē, kur parādās parastais izvēlnes redaktors, parādīsies konteksta izvēlne. Noklikšķiniet uz tā un tur, kur rakstīts, ierakstiet šeit, ierakstiet Noņemt vienumu. Rekvizītu logā tiks parādīta MenuItem tik pārdēvēta par mniRemove. Veiciet dubultklikšķi uz šīs izvēlnes vienības un jums vajadzētu saņemt menuItem1_Click notikumu apstrādātāja koda funkciju. Pievienojiet šo kodu, lai tas izskatās šādi.

Ja aizmirstat vienumu Noņemt, vienkārši noklikšķiniet uz PopupMenu vadības ierīces, kas atrodas veidlapas veidnē. Tas to atgriezīs skatā.

Tomēr, ja to palaižat un nepievienojat vienumu un to neizvēlaties, ar peles labo pogu noklikšķinot un nokļūstot izvēlnē un noklikšķinot uz Noņemt vienumu, tas dos izņēmumu, jo izvēlētā vienuma nav. Tā ir slikta programmēšana, tāpēc lūk, kā jūs to labojat. Veiciet dubultklikšķi uz uznirstošā notikuma un pievienojiet šo koda rindu.

DataGridView ir vissarežģītākais un visnoderīgākais komponents, kas bez maksas tiek nodrošināts ar C #. Tas darbojas gan ar datu avotiem (t.i., datiem no datu bāzes), gan bez (ti, ar datiem, kurus programmatiski pievienojat). Pārējā šīs apmācības laikā es to parādīšu, neizmantojot datu avotus. Vienkāršākām displeja vajadzībām jūs varat atrast piemērotāku vienkāršu ListView.

Ja esat izmantojis vecāku DataGrid vadību, tad tas ir tikai viens no steroīdiem: tas dod jums vairāk iebūvētu kolonnu veidus, var strādāt ar iekšējie, kā arī ārējie dati, plašāka displeja (un notikumu) pielāgošana un dod lielāku kontroli pār šūnu apstrādi ar sasalšanas rindām un kolonnas.

Izstrādājot veidlapas ar režģa datiem, visbiežāk ir jānorāda dažādi kolonnu veidi. Jums varētu būt izvēles rūtiņas vienā kolonnā, tikai lasāms vai rediģējams teksts citā, kā arī kursu numuri. Šie kolonnu tipi parasti tiek atšķirīgi izlīdzināti ar cipariem, kas parasti ir izlīdzināti pa labi, lai decimāldaļas sakristu. Kolonnu līmenī jūs varat izvēlēties pogas, izvēles rūtiņu, ComboBox, attēlu, TextBox un saites. ja ar tiem nepietiek, varat definēt savus pielāgotos veidus.

Vienkāršākais kolonnu pievienošanas veids ir projektēšana IDE. Kā mēs redzējām iepriekš, tas vienkārši jums raksta kodu, un, kad esat to izdarījis dažas reizes, ieteicams izvēlēties pievienot kodu pats. Kad esat to izdarījis pāris reizes, tas sniedz ieskatu, kā to izdarīt programmatiski.

Sāksim, pievienojot dažas kolonnas, nometiet veidlapā DataGridView un augšējā labajā stūrī noklikšķiniet uz mazās bultiņas. Pēc tam noklikšķiniet uz Pievienot kolonnu. Dariet to trīs reizes. Tas parādīs dialoglodziņu Pievienot kolonnu, kurā jūs iestatāt kolonnas nosaukumu, kolonnas augšdaļā redzamo tekstu un ļauj izvēlēties tā veidu. Pirmā kolonna ir YourName, un tā ir noklusējuma TextBox (dataGridViewTextBoxColumn). Iestatiet galvenes tekstu arī uz savu vārdu. Padariet otro kolonnu pēc vecuma un izmantojiet ComboBox. Trešā kolonna ir atļauta, un tā ir izvēles rūtiņa.

Pēc visu trīs pievienošanas jums vajadzētu redzēt trīs kolonnu rindu ar kombinētu tās vidū (Vecums) un izvēles rūtiņu ailē Atļauts. Ja jūs noklikšķiniet uz DataGridView, tad īpašumu inspektorā jums jāatrod kolonnas un jānoklikšķina uz (kolekcija). Tiek parādīts dialoglodziņš, kurā varat iestatīt katras kolonnas rekvizītus, piemēram, atsevišķas šūnu krāsas, rīka padoma tekstu, platumu, minimālo platumu utt. Apkopojot un palaižot, pamanīsit, ka varat mainīt kolonnu platumu un izpildes laiku. Galvenā DataGridView īpašuma inspektorā varat iestatīt AllowUser, lai mainītu kolonnu lielumu uz nepatiesu, lai to novērstu.

Mēs pievienosim rindas DataGridView vadībai kodā, un ex3.cs piemēru failā ir šis kods. Sākumā pievienojot veidlapu TextEdit, ComboBox un pogu, uz kuras atrodas DataGridView. Iestatiet DataGridView rekvizītu AllowUserto AddRows uz nepatiesu. Es izmantoju arī etiķetes un saucu kombinēto lodziņu cbAges, pogu btnAddRow un TextBox tbName. Es arī esmu pievienojis veidlapas aizvēršanas pogu un divreiz noklikšķinājis uz tās, lai izveidotu btnClose_Click notikumu apstrādātāja skeletu. Pievienojot vārdu Aizvērt (), tas darbojas.

Pēc noklusējuma pogas Pievienot rindu iespējots īpašums ieslēgšanas laikā ir iestatīts uz nepatiesu. Mēs nevēlamies pievienot DataGridView rindas, ja vien lodziņā Name TextEdit un ComboBox nav teksta. Es izveidoju metodi CheckAddButton un pēc tam ģenerēju lodziņu Nosaukums teksts, atstājot notikumu apstrādātāju, divreiz noklikšķinot uz vārda Atstāt īpašumos, kad tas parādīja notikumus. Lodziņā Rekvizīti tas ir parādīts iepriekš redzamajā attēlā. Pēc noklusējuma lodziņā Properties tiek parādīti rekvizīti, taču, noklikšķinot uz zibens pogas, jūs varat redzēt notikumu apstrādātājus.

Tā vietā jūs varētu izmantot notikumu TextChanged, lai gan tas sauksies CheckAddButton () metode katram taustiņa nospiešanai, nevis tad, kad tiek pārtraukta vadība, t.i., kad iegūst citu vadību fokuss. Combo Ages es izmantoju notikumu TextChanged, taču tā vietā, lai dubultklikšķi uzklikšķinātu, lai izveidotu jaunu notikumu apstrādātāju, atlasīju notikumu apstrādātāju tbName_Leave.

Ne visi notikumi ir savietojami, jo daži notikumi nodrošina papildu parametrus, bet, ja jūs varat redzēt iepriekš ģenerētu apstrādātāju, tad jā, varat to izmantot. Tas lielākoties ir jautājums par izvēli. Jums var būt atsevišķs notikumu apstrādātājs katrai kontrolierīcei izmantojot vai koplietojot notikumu apstrādātājus (kā es to darīju), ja viņiem ir kopīgs notikumu paraksts, t.i., parametri ir tas pats.

Es īsumā pārdēvēju DataGridView komponentu uz dGView un divreiz noklikšķināju uz AddRow, lai ģenerētu notikumu apstrādātāja skeletu. Šis kods zemāk pievieno jaunu tukšu rindu, iegūst šo rindu indeksu (tas ir RowCount-1, jo tas tikko tika pievienots, un RowCount ir 0 balstīta) un pēc tam piekļūst šai rindai, izmantojot tās indeksu, un šīs rindas šūnās nosaka vērtības kolonnām YourName un Vecums.

Izstrādājot veidlapu, jums jādomā par konteineriem un vadības ierīcēm un to, kuras vadības grupas jāsaglabā kopā. Jebkurā gadījumā Rietumu kultūrās cilvēki lasa no augšējās kreisās puses līdz apakšai labajai malai, lai būtu vieglāk lasīt šādā veidā.

Tvertne ir jebkura no vadības ierīcēm, kurā var būt citas vadības ierīces. Rīklodziņā atrodami paneļi, FlowLayoutpanel, SplitContainer, TabControl un TableLayoutPanel. Ja neredzat rīklodziņu, izmantojiet izvēlni Skats, un jūs to atradīsit. Konteineri tur vadības ierīces kopā, un, ja jūs pārvietojat vai mainīsit konteinera izmēru, tas ietekmēs vadības ierīču novietojumu. Vienkārši pārvietojiet vadīklas pār konteineru veidlapu noformētājā, un tas atzīs, ka konteiners tagad ir atbildīgs.

Panelis ir līdzīgs GroupBox, bet GroupBox nevar ritināt, bet var parādīt parakstu un pēc noklusējuma tam ir apmale. Paneļiem var būt apmales, bet pēc noklusējuma to nav. Es izmantoju GroupBoxes, jo tie izskatās jaukāki, un tas ir svarīgi, jo:

Paneļi ir ērti arī konteineru grupēšanai, tāpēc panelī var būt divas vai vairākas GroupBox.

Šeit ir padoms darbam ar konteineriem. Nometiet sadalīto konteineru uz veidlapas. Noklikšķiniet uz kreisā paneļa, pēc tam uz labo. Tagad mēģiniet noņemt SplitContainer no veidlapas. Tas ir grūti, līdz peles labo pogu noklikšķiniet uz viena no paneļiem un pēc tam noklikšķiniet uz Atlasīt SplitContainer1. Kad tas viss ir atlasīts, varat to izdzēst. Vēl viens veids, kas attiecas uz visām vadības ierīcēm un konteineriem, ir hit Esc taustiņu lai izvēlētos vecāku.

Arī konteineri var ligzdot viens otra iekšpusē. Vienkārši velciet mazu virs lielāka, un uz īsu brīdi parādīsies plāna vertikāla līnija, kas parādīs, ka viena tagad atrodas otrā. Velkot vecāku konteineru, bērns tiek pārvietots ar to. To parāda 5. piemērs. Pēc noklusējuma gaiši brūns panelis neatrodas konteinera iekšpusē, tāpēc, kad jūs noklikšķiniet uz pārvietošanas pogas, GroupBox tiek pārvietots, bet panelis nav. Tagad velciet paneli virs GroupBox, lai tas pilnībā atrastos Groupbox. Kad šoreiz kompilējat un palaižat, noklikšķinot uz pogas Pārvietot, abas puses pārvietojas.

TableLayoutpanel ir interesants konteiners. Tā ir tabulas struktūra, kas sakārtota kā 2D šūnu režģis, kurā katra šūna satur tikai vienu vadīklu. Šūnā nedrīkst būt vairāk par vienu vadības ierīci. Varat norādīt, kā tabula aug, kad tiek pievienota vairāk vadīklu vai pat ja tā nepalielinās. Šķiet, ka tā ir veidota HTML tabulā, jo šūnas var aptvert kolonnas vai rindas. Pat bērnu vadības ierīču stiprināšana konteinerā ir atkarīga no Margin un Padding iestatījumiem. Vairāk par enkuriem redzēsim nākamajā lapā.

Ex6.cs piemērā es esmu sācis ar pamata divu kolonnu tabulu un norādījis to dialoglodziņā Kontroles un rindas stili (atlasiet vadīklu un noklikšķiniet uz mazā labais virziena trīsstūris, kas atrodas augšējā labajā stūrī, lai redzētu uzdevumu sarakstu un noklikšķiniet uz pēdējā), ka kreisā kolonna ir 40% un labā kolonna 60% no platums. Tas ļauj jums norādīt kolonnu platumu absolūtā pikseļu izteiksmē, procentos, vai arī jūs varat ļaut tai automātiski noteikt izmēru. Ātrāks veids, kā nokļūt šajā dialogā, vienkārši noklikšķiniet uz kolekcijas blakus kolonnām rekvizītu logā.

Esmu pievienojis pogu AddRow un atstājis GrowStyle īpašumu ar noklusējuma vērtību AddRows. Kad galds ir piepildīts, tas pievieno vēl vienu rindu. Varat arī iestatīt tā vērtības uz AddColumns un FixedSize, lai tā vairs nevarētu augt. Ex6, noklikšķinot uz pogas Pievienot vadīklas, tā trīs reizes izsauc metodi AddLabel () un vienreiz AddCheckBox (). Katra metode izveido vadības gadījumu un pēc tam izsauc tblPanel. Kontroles. Pievienot () Pēc otrās vadības pievienošanas trešās vadīklas izraisa tabulas augšanu. Attēlā tas redzams pēc tam, kad vienreiz ir noklikšķināts uz pogas Pievienot vadību.

Gadījumā, ja rodas jautājums, no kurienes AddCheckbox () un AddLabel () metodēs, kuras saucu par noklusējuma vērtībām, vadība bija sākotnēji tika manuāli pievienots dizainera tabulā un pēc tam kods, lai to izveidotu un inicializētu, tika nokopēts no tā novads. Inicializācijas kodu jūs atradīsit metodes InitializeComponent izsaukumā, kad noklikšķināsit uz + pa kreisi no reģiona zemāk:

Vienlaicīgi var atlasīt vairākas vadības ierīces, turot nospiestu taustiņu Shift, kad atlasāt otro un nākamās vadības ierīces, pat dažāda veida vadības ierīces. Rekvizītu logā tiek parādīti tikai tiem abiem raksturīgie rekvizīti, lai jūs varētu iestatīt tos visus vienādos izmēros, krāsās un teksta laukos utt. Pat tos pašus notikumu apstrādātājus var piešķirt vairākām vadības ierīcēm.

Atkarībā no lietošanas dažām veidlapām lietotājs bieži mainīs lielumu. Nekas neizskatās sliktāk, kā mainīt formas izmērus un redzēt vadības ierīces nemainīgā stāvoklī. Visām vadības ierīcēm ir enkuri, kas ļauj tos "piestiprināt" pie 4 malām tā, lai, pārvietojot pievienoto malu, vadības ierīce kustētos vai stiepjas. Tas noved pie šādas izturēšanās, kad forma ir izstiepta no labās malas:

Pogām, piemēram, Aizvērt, kuras tradicionāli atrodas labajā apakšējā stūrī, nepieciešama 3. darbība. ListViews un DataGridViews vislabāk ir ar 2, ja kolonnu skaits ir pietiekams, lai pārpildītu veidlapu, un tām nepieciešama ritināšana). Augšējais un kreisais enkurs ir noklusējuma iestatījums. Īpašuma logā ir iekļauts četrdesmit mazs redaktors, kas izskatās kā Anglijas karogs. Vienkārši noklikšķiniet uz jebkuras joslas (divas horizontālas un divas vertikālas), lai iestatītu vai notīrītu atbilstošo enkuru, kā parādīts attēlā iepriekš.

Viens īpašums, kas netiek daudz pieminēts, ir īpašums Tags, tomēr tas var būt neticami noderīgs. Rekvizītu logā varat piešķirt tikai tekstu, bet kodā var būt jebkura vērtība, kas nāk no objekta.

Esmu izmantojis Tagu, lai turētu visu objektu, vienlaikus ListView parādot tikai dažas tā īpašības. Piemēram, jūs varētu vēlēties klienta kopsavilkuma sarakstā parādīt tikai klienta vārdu un numuru. Bet ar peles labo pogu noklikšķiniet uz izvēlētā klienta un pēc tam atveriet veidlapu ar visu klienta informāciju. Tas ir viegli, ja, izveidojot klientu sarakstu, izlasot visu klienta informāciju atmiņā un tagā piešķirot atsauci uz klienta klases objektu. Visām vadības ierīcēm ir birka.

TabControl ir ērts veids, kā ietaupīt veidlapas vietu, izmantojot vairākas cilnes. Katrā cilnē var būt ikona vai teksts, un jūs varat izvēlēties jebkuru cilni un parādīt tās vadīklas. TabControl ir konteiners, bet tajā ir tikai TabPages. Katrs TabPage ir arī konteiners, kuram var pievienot normālas vadīklas.

X7.cs piemērā esmu izveidojis divu cilņu lappuses paneli ar pirmo cilni ar nosaukumu Kontrolierīces, kam ir trīs pogas un izvēles rūtiņa. Otrās cilnes lapa tiek apzīmēta ar žurnālu un tiek izmantota, lai parādītu visas reģistrētās darbības, kas ietver pogas noklikšķināšanu vai izvēles rūtiņas pārslēgšanu. Tiek izsaukta metode, kuras nosaukums ir Log (), lai reģistrētu katru pogas klikšķi utt. Tas pievieno piegādāto virkni ListBox.

Esmu arī pievienojis divus labās pogas uznirstošās izvēlnes vienumus TabControl parastajā veidā. Vispirms pievienojiet ContextMenuStrip formai un iestatiet to TabControl īpašumā ContextStripMenu. Divas izvēlņu izvēles iespējas ir Pievienot jaunu lapu un Noņemt šo lapu. Tomēr esmu ierobežojis lapas noņemšanu, tāpēc var noņemt tikai nesen pievienotās cilnes lapas, nevis divas oriģinālās.

Tas ir viegli, vienkārši izveidojiet jaunu cilnes lapu, piešķiriet tai cilnes Teksta parakstu un pēc tam pievienojiet to cilnes TabCages cilnei TabPages

Lapas noņemšana ir tikai zvanīšana uz TabPages. RemoveAt (), izmantojot cilnes. SelectedIndex, lai iegūtu pašlaik atlasīto cilni.

Šajā apmācībā mēs esam redzējuši, kā darbojas dažas sarežģītākas vadības ierīces un kā tās izmantot. Nākamajā apmācībā es turpināšu GUI tēmu un apskatīšu fona darbinieka pavedienu un parādīšu, kā to izmantot.

instagram story viewer