Tu jau esi mācījies, kā piepildīt ListBox ar datiem no SQLite datu bāzes. Šajā nodarbībā paplašināsim savu zināšanu loku, sasaistot TextBox ar šo ListBox. Šī sasaistes iespēja ļauj tev mainīt, dzēst vai pievienot jaunas vērtības. Turklāt mēs parādīsim, kā uzraudzīt izvēli ListBox un rādīt tās vērtību TextBox. Tādējādi tu vari padarīt savu lietotni interaktīvāku un lietotājam draudzīgāku.

Galvenās atziņas

  • Tu sasaisti TextBox ar ListBox, lai dinamiskā veidā rādītu izvēli.
  • Izmantojot SQLite datu bāzi, tu vari saglabāt un iegūt savus datus ilgstoši.
  • Mēs ieviešam pasākumus, lai izvairītos no kļūdām, lai nepieļautu nevēlamas izņēmums.

Solim pa solim instruktāža

Vispirms apskatīsim, kā mēs varam izveidot sasaisti starp mūsu TextBox un ListBox:

1. Izvēles pieprasīšana ListBox

Lai uzraudzītu izvēli ListBox, mums jāpapildina kods attiecīgajiem notikumiem. Pirmkārt, mums jādara zināms, kurš elements ListBox šobrīd ir izvēlēts.

Dinamiska saistīšana starp ListBox un TextBox C# valodā

Šim nolūkam mēs kopējam SQLiteCommand no metodes, ar kuras palīdzību mēs piepildījām ListBox. Mēs pievienojam šo kodu piemērotā vietā un papildinām to ar SQL komandu, kas iegūst izvēli no mūsu datu bāzes. SQL komanda var izskatīties šādi: SELECT ID, Automarke FROM Automarken WHERE ID = @ID, kur @ID ir vietturis mūsu parametram.

2. Parametra pievienošana SQL pieprasījumam

Nākamais solis ir iestatīt parametru SQL pieprasījumam. Šeit mēs izmantojam primāro atslēgu (Primary Key), lai izvēlētos pareizo automašīnu.

Pēc tam komanda tiek optimizēta, iegūstot izvēlētās automašīnas ID no ListBox. To veicam, izmantojot listBox.SelectedValue. Tagad pievienojam šo parametru pieprasījumam.

Dinamiska saite starp ListBox un TextBox C# valodā

3. Datu tabulas izveide un piepildīšana

Tagad, kad mums ir SQL komanda, mums jāizveido datu tabula, lai apstrādātu pieprasījumus. Mēs nosauksim šo datu tabulu par myDataTable un pēc tam pievienosim SQLiteDataAdapter, lai inicializētu mūsu SQL pieprasījuma rezultātus.

Dinamiska saišana starp ListBox un TextBox C# valodā

Pēc tam, kad datu tabula ir piepildīta, mēs varam ielādēt TextBox ar izvēlētās automašīnas vērtību.

Dinamiska saikne starp ListBox un TextBox C# valodā

4. Izvēlētās automašīnas rādīšana TextBox

Lai iestatītu vērtību no datu tabulas TextBox, mēs iegūstam pirmo ierakstu no datu tabulas. Mēs izmantojam myDataTable.Rows[0]["Automarke"].ToString() un iestatām rezultātu uz TextBox.

5. Kļūdu apstrāde

Lai nodrošinātu, ka lietojumprogrammas izpildes laikā nenotiek kļūdas, mums jāievieš kļūdu apstrāde. To darām, pārbaudot, vai ListBox ir izvēlēts kāds elements pirms pieprasījuma veikšanas.

Šeit mēs izmantojam vienkāršu nosacījumu: ja myListBox.SelectedValue == null, mēs pārtraucam metodi. Šis pasākums nodrošina, ka mēs nesaskaramies ar nulles atsaucēm un ka lietojumprogramma paliek stabila.

Dinamiska saite starp ListBox un TextBox C# valodā

6. Funkcionalitātes testi

Pēc iepriekš minēto soļu īstenošanas ir svarīgi testēt lietojumprogrammu. Sāc programmu un pārbaudi, vai piekļuves sākumā pirmais ieraksts ListBox automātiski tiek parādīts TextBox.

Dinamiska saite starp ListBox un TextBox C# valodā

Ja tu tagad pārvietojies starp dažādām automašīnām, tev vajadzētu redzēt, ka TextBox dinamiskā veidā tiek atjaunināts, lai attēlotu attiecīgo vērtību.

Dinamiska saistīšana starp ListBox un TextBox C#

Tagad, kad tu saproti pamatus un kodu TextBox un ListBox sasaistīšanai, tu vari turpināt optimizēt savu lietotni. Nākamajā solī mēs iemācīsimies, kā pievienot jaunas automašīnas datu bāzei, izmantojot pogu.

Kopsavilkums – ListBox un TextBox C#: dati dinamiskā veidā sasaistīti

Šajā rokasgrāmatā tu esi iemācījies, kā sasaistīt TextBox ar ListBox un realizēt tā dinamisko interaktivitāti. Šī koncepcija atver tev jaunus veidus, kā izveidot lietotāju lietojumprogrammas, kas ir gan informatīvas, gan lietotājam draudzīgas.

Bieži uzdotie jautājumi

Ko man darīt, ja TextBox netiek atjaunināts?Pārbaudi, vai ListBox atgriež pareizo vērtību un vai DataAdapter ir pareizi konfigurēts.

Kā pievienot jaunu automašīnu?To mēs apskatīsim nākamajā videoklipā, ievietojot pogu, kas ļaus tev pievienot automašīnas datu bāzei.

Kāpēc mēs pārvēršam DataTable iznākumus par String?Lai nodrošinātu, ka vērtība TextBox tiek pareizi attēlota kā teksts, mums jāveic tās konvertēšana uz String.