DataGridView

Dit is een krachtig controle om gegevens weer te geven op het scherm, heeft vele opties, probeer dan een eenvoudig voorbeeld zien en dan zwijgen van alle die ik gebruik bij het werken met een DataGridView.

 'Verbinden met de database en het verkrijgen van de records in een DataTable
 Dim cnn As New SqlConnection
 cnn.ConnectionString = _
 "Data Source = .. \ SQLExpress; Initial Catalog = BasedePrueba;
 Integrated Security = True "

 "Sommige lijnen van deze code moest worden verdeeld
 'EKL niet in de breedte van het scherm.

 cnn.Open ()

 Dim ds As New DataSet
 Dim da As New SqlDataAdapter

 Dim sql As String
 sql = "Select * from SaldosClientes"
 da.SelectCommand = New SqlCommand (sql, CNN)
 da.Fill (ds)
 cnn.Close ()

 'Met deze lijn krijg ik een DataTable
 (Dt) met de resulterende platen
 Dim dt Als DataTable = ds.Tables (0)

 'Nu kan ik toewijzen DataTable (dt) om DataGridView1
 DataGridView1.DataSource = dt

Met de bovenstaande code genoeg om onze eerste DataGridView te vullen. Nu we zien wel wat kunnen we anders doen met deze controle.

 'Definieer welk lettertype te gebruiken
 DataGridView1.Font = _
     Nieuwe Drawing.Font ("Tahoma", 8, FontStyle.Regular, GraphicsUnit.Point

 'Wat kolommen zichtbaar zijn
 DataGridView1.Columns ("ID"). Visible = False
 DataGridView1.Columns ("Code"). Visible = True
 DataGridView1.Columns ("RazonSocial"). Visible = True
 DataGridView1.Columns ("Date"). Visible = True
 DataGridView1.Columns ("Balance"). Visible = True

 'Wat zal de volgorde van de kolommen zijn
 DataGridView1.Columns ("ID"). DisplayIndex = 0
 DataGridView1.Columns ("Code"). DisplayIndex = 1
 DataGridView1.Columns ("RazonSocial"). DisplayIndex = 2
 DataGridView1.Columns ("Date"). DisplayIndex = 3
 DataGridView1.Columns ("Balance"). DisplayIndex = 4

 'Breedte van de kolommen
 DataGridView1.Columns ("ID"). Breedte = 100
 DataGridView1.Columns ("Code"). Breedte = 100
 DataGridView1.Columns ("RazonSocial"). Breedte = 100
 DataGridView1.Columns ("Date"). Breedte = 100
 DataGridView1.Columns ("Balance"). Breedte = 100

 'De kolomkop
 DataGridView1.Columns ("ID"). HeaderText = "Id"
 DataGridView1.Columns ("Code"). HeaderText = "Code"
 DataGridView1.Columns ("RazonSocial"). HeaderText = "Naam"
 DataGridView1.Columns ("Date"). HeaderText = "Datum"
 DataGridView1.Columns ("Balance"). HeaderText = "Balance"

 "De richting van de cellen in elke kolom
 DataGridView1.Columns ("ID"). DefaultCellStyle.Alignment = _
 DataGridViewContentAlignment.BottomRight

 DataGridView1.Columns ("Code"). DefaultCellStyle.Alignment = _
 DataGridViewContentAlignment.BottomLeft

 DataGridView1.Columns ("RazonSocial"). DefaultCellStyle.Alignment = _
 DataGridViewContentAlignment.BottomLeft

 DataGridView1.Columns ("Date"). DefaultCellStyle.Alignment = _
 DataGridViewContentAlignment.BottomLeft

 DataGridView1.Columns ("Balance"). DefaultCellStyle.Alignment = _
 DataGridViewContentAlignment.BottomRight

 'De alinación kop van elke kolom
 DataGridView1.Columns ("ID"). HeaderCell.Style.Alignment = _
 DataGridViewContentAlignment.BottomRight

 DataGridView1.Columns ("Code"). HeaderCell.Style.Alignment = _
 DataGridViewContentAlignment.BottomLeft

 DataGridView1.Columns ("RazonSocial"). HeaderCell.Style.Alignment = _
 DataGridViewContentAlignment.BottomLeft

 DataGridView1.Columns ("Date"). HeaderCell.Style.Alignment = _
 DataGridViewContentAlignment.BottomLeft

 DataGridView1.Columns ("Balance"). HeaderCell.Style.Alignment = _
 DataGridViewContentAlignment.BottomRight

 "Het formaat van de numerieke kolommen
 DataGridView1.Columns ("Balance"). DefaultCellStyle.Format = "# #, # # 0.00"

Nou, ik besteed veel tijd op zoek naar al deze instellingen op een DataGridView te verlaten als ik wilde. Ik hoop dat u het nuttig vinden en ik zal meer binnenkort uploaden over deze geweldige data controle.

22 Responses to "DataGridView"

  1. [...] 12, 2009 Vandaag wil ik een eenvoudig voorbeeld van hoe u verbinding met SQL Server en bevolken een DataGridView laten zien, maar zonder het schrijven van een enkele regel code. Dit houdt in dat wij slepen [...]

  2. Jose Luis PEREZ zegt:

    Dank je wel,

    Deze voorbeelden zijn zeer goed, vooral bij de eenvoud die uit te leggen.

    Gefeliciteerd.

  3. Jose zegt:

    Zeer goed uw uitleg, maar ik vraag me af of u mij kan helpen, om te zien hoe dat te doen in omgekeerde, dat wil zeggen, het nemen van de gegevens in een DataGridView (voorbeeld 1 rij en 4 kolommen), voeg een nieuwe rij in een database dezelfde kenmerken (1 rij, 4 kolommen), veel waardering voor uw hulp. Dank u.

  4. David C. zei:

    Bedankt voor het voorbeeld van vulling en configuratie van de DataGridView was ik goed.

  5. Rodrigo Caceres zegt:

    Gefeliciteerd, zo simpel is het ... een rolmodel

  6. HACKER GONZALO ROOT zegt:

    GRAIAS informatie voor dit heel goed uitgelegd hoeveel ik van ZIJN U dient voor uw hulp.

    :-)

  7. Alexander zegt:

    HEY BEDANKT VOOR de volgende informatie nodig, uitmuntend in uitgelegd EN FUNCTIONELE waarheid dat we de programmeurs DataGrid maken vaak gebruik van

  8. Juan Osuna zegt:

    Hallo Ik heb een vraag die bij mij knaagt voor dagen,
    en ontdek de index van de rij die ik heb geselecteerd in een DataGridView.
    te vormen en geef het nog leerde me de volledige details in de vorm dat ik gek wordt

  9. DarkRex zegt:

    Heel goed
    maar ik wel graag weten hoe u gegevens die zijn ingevoerd in een cel van datagridview kolomtype te valideren is de datum en een maskeditbox.

  10. Nathalia Gomez zegt:

    En om alle soorten validatie te doen

  11. Sanclemente gino zegt:

    hi all .. q Ik wil graag om mij te helpen, want ik ben bezig met een q q bevat een object datagridview DataGridViewComboBoxColumn coderen ik ga kijken of ik helpen bij het vinden een fout of heeft u er geen q: Private BtnAddRequisito_Click (Sub ByVal sender As System.Object, ByVal e Als System.EventArgs) Handles BtnAddRequisito.Click
    Dim As String = Negocio.Conexion sConexion
    Als Nieuw DataSet Dim Ds_datos
    As String Dim sQuery CboRequisitoColumn.Name = "Onderwerp"
    Me.DGVMaterias.Columns.Add (CboRequisitoColumn)
    sQuery = "SELECT asg_codigo als code, omschrijving FROM asg_nombre als spsatbasignatura WAAR asg_semestre <" & Me.CMBSemestre.Text Ds_datos = Accesar_Datos.GetDataSet (sQuery, sConexion)
    my_DGVCboColumn.DataSource = Ds_datos.Tables (0)
    my_DGVCboColumn.Name = "Data"
    my_DGVCboColumn.DisplayMember = Ds_datos.Tables (0). Columns ("description"). ToString
    my_DGVCboColumn.ValueMember = Ds_datos.Tables (0). Columns ("nummer"). ToString Me.DGVMaterias.Columns.RemoveAt (0)
    Me.DGVMaterias.Columns.Insert (0, my_DGVCboColumn)
    Einde Sub'el creëert boven het rooster
    'Het volgende is waar ik wil
    'Wijs of plaats de code geeft mij q
    'My_DGVCbocolumn object q is binnen q DGVMaterias xq Ik denk dat ik mag niet
    'Zie Sub CboRequisitoColumnPrivate Agregar_Requisitos ()
    SQuery Dim As String = ""
    Dim As String = Negocio.Conexion sConexion
    Als Nieuw DataSet Dim Ds_Datos
    Krow Dim As Integer = 0
    Dim aux As String
    Probeer Dim r As Integer = 0 Om Krow Voor Me.DGVMaterias.RowCount - 1
    aux = Me.my_DGVCboColumn.Items (Krow). ToString
    r = CType (aux, Integer)
    sQuery = "spi_spsatbrequisito_asignatura" & Code & "" & r & ""
    Ds_Datos = Accesar_Datos.GetDataSet (sQuery, sConexion)
    Volgende Krow
    Catch ex als uitzondering
    MsgBox (ex.Message, MsgBoxStyle.Critical, "Fout")
    TryEnd End Sub 'bij voorbaat dank

  12. Mode zegt:

    Hey. Bedankt voor dit bericht als nuttig. Ik werd gek proberen te raden om een ​​vervreemding anders op elke kolom. Hoe dan ook, heb ik de bijbehorende code in de Load geval van een formulier dat de DataGrid heeft en geeft mij fout. Ik zei dat ik verwijzen naar een object dat niet bestaat. Iedereen weet waarom dit is? Misschien moet ik neem de code van een andere gebeurtenis procedure anders? Dank u.

  13. Mel86 zegt:

    Hallo .. Ik hoop dat je dit leest reactie .. Ik zou graag willen weten wie de eigenaar datagrid catch me niet. klant-ID te klikken.

    Elemplo ... als ik zoek naar mensen die wonen in X plaats en ik zijn 2 in de DataGrid, om u dubbelklikt op de cel van het record aantal textbox heb ik mij met de gegevens. Wat doet is dat door het geven van me 2 records zoekgegevens laatste regustro niet de eerste of de derde .. DANK gebruik maken van een cyclus in het geval C1_CellDoubleClick (datagrid)
    Voor x As Integer = 0 To (C1.RowCount - 2)
    C1.Item Label3.Text = (0, x). Waarde
    Volgende

  14. Enrique zegt:

    Hello! Ik ben nieuw in de DataGridView,
    Ik werk met Visual Stuio 2008,

    Mijn vraag is:

    Ik heb een DataGridView en ik ben het passeren van de gegevens via een "PictureBox" (product, prijs, en de totale catidad)
    KLIK om te geven aan de 1ste afbeelding, de cellen gevuld met een "ImputBox" Ik vroeg hoeveel en maakt de bediening (* prijs = totaal bedragen)

    Maar ...

    Om hetzelfde te doen door de volgende afbeelding, of met hetzelfde beeld, DATA ik altijd in dezelfde rij!

    Zoals ik kan je geven voor elke keer dat k van de FOTO CLCK me omgaan met de rij die is ...?

    Zou het zeer op prijs deze bijdrage!

  15. Mombiela Jaime zegt:

    Heel hartelijk bedankt.
    Zeer goede voorbeelden.

  16. Jose zegt:

    Groeten vriend, bedankt voor de code

  17. Fernando Caceres Guillermo Illanes zegt:

    Hartelijk dank voor de input, voor dagen en komen op zoek naar een voorbeeld, het past bij mijn code compileren en zeer goed ..

  18. Jordi zegt:

    Ik vraag me af of datagridview controle kunt u de groep een aantal rijen met een gemeenschappelijk veld. Kan ik doen?

    Bedankt

  19. Marcelo zegt:

    IK HEB EEN twijfel met GRIDWIEV, de query wijzigen En ik denk niet laden raster op scherm dat kan worden dit voor mij WAT?

    Groet en bedankt

Commentaar