DatabashanteringVisa data | |
![]() | ![]() |
![]() | |
Visa data i formulär
Man kan välja att visa alla datafält i en post eller bara ett urval ge användaren möjlighet att bläddra fram och tillbaka i postrna. De kontroller i Toolbox som kan visa data från ett dataset är ComboBox, ChechBox, DataGrid, ListBox, RadioButton, PicturBox och TextBox.
Klicka på plustecknet så att DataBindings expanderar. Klicka därefter på Text och på nedpilen. Nu visas alla datakällor som går att binda till TextBoxen, i vårt fall det dataset Kontakter som vi skapade tidigare. Expanderas Kontakter syns tabellnamnet och om vi expanderar även det syns kolumnnamnen. Klicka på ett kolumnnamn så blir TextBoxen bunden till kolumnen i datasetet. Gör samma sak med de övriga TextBoxarna och kolumnerna. Dubbelklicka nu på formuläret och skriv koden i Form1_Load: Kontakter1.Clear() Kontakter1 är alltså namnet på vårt dataset och OleDbDAtaAdapter1 namnet på dataadaptern. När vi nu kör programmet fylls TextBoxarna med data från tabellen. Men det är bara första posten som visas. Vi vill kunna bläddra till nästa post. Lägg ut en Button som får texten Nästa. Dubbelklicka på den och skriv koden: BindingContext(Kontakter1, "Personer").Position += 1 Kontakter1 är alltså vårt dataset och Personer är namnet på tabellen vi använder. Positionen ökar med 1 steg. På samma sätt bläddrar vi ett steg bakåt: BindingContext(Kontakter1, "Personer").Position -= 1 En knapp som gör att man kan gå direkt till första posten får koden: BindingContext(Kontakter1, "Personer").Position = 0 För att kunna gå direkt till sista posten skriver vi i en fjärde knapp: BindingContext(Kontakter1, "Personer").Position = BindingContext(Kontakter1, "Personer").Count - 1 DataGrid ("dataraster")
Klicka sedan på .Net Framework Components och välj DataGrid - System Windows Forms. Klicka OK och
DataGrid ligger i ToolBoxen. Markera det och rita ut en stor fyrkant på formuläret. I propertiesfönstret klickar vi på DataSource och sedan på nedpilen. Nu visas vårt dataset.
Markera det övre - som i exemplet är Kontakter1.Personer - och tabellens kolumnhuvuden visas i datarastret. Om vi väljer det andra alternativer med Kontakter1 visas en ruta med ett plustecken i datarastret. Då kan man antingen klicka på plustecknet när progarmmet körs eller få fram tabellen genom att ange DataMember i Properties. I det här exemplet står det Personer i DataMember, som vi alltså markerar. När programmet är i gång och tabellen visas man vi till exempel klicka uppe i ett tabellhuvud för att sortera tabellen efter den kolumnen. Uppdatera datbasenFör att uppdatera databasen måste den ha haft en primärnyckel redan från början. Om det inte fanns en primärnyckel hade vi, när vi skapade datasetet, fått ett meddelande om att det inte går att uppdatera databasen . Markera datarastret och titta i Properties på ReadOnly. Den skalt vara satt till False, så att användaren kan ändra i datarastret. Lägg till en Button, ge den texten Uppdatera och lägg till koden: OleDbDataAdapter1.Update(Kontakter1) När vi nu gör en ändring i datarastret ändras datat i datasetet, och klickar vi på knappen uppdatera ändras datat även i originaldatabasen. Klicka nu i ett fält på sista raden, den som är markerad med en stjärna. Nu kommer det att stå Null i nästan alla fält på raden. Skriv dit något och klicka på Uppdatera. Nu läggs en post till i originaldatabasen. Vill vi ta bort en post markerar vi den och trycker på Delete. Sedan klickar vi på Uppdatera. | |
![]() | ![]() |
![]() | |
SupportData.Net |