Resize columns in datagrid

Hi experts,

having difficulty in resizing the columns in a datagrid....working on a project for a CE device. Created a datagrid from a string (lines from file), but am unable to resize these columns...can't find the right thing on internet....everybody is talking about mapping to a dataset....

my code:

Public Class FrmBestellingen
    Public fi As FileInfo
    Public filenaam As String
    Public Cart As New Data.DataTable
    Public dr As Data.DataRow
    Public teller As Integer


    Private Sub FrmBestellingen_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim Files() As String = Directory.GetFiles(Settings.DataPath)
        For Each FileName As String In Files
               fi = New FileInfo(FileName)
            If fi.Name.ToUpper().StartsWith("P") = True Then
                'ignore
            ElseIf fi.Name.ToUpper().StartsWith("DAG") = True Then
                'ignore
            Else
                filenaam = fi.ToString
                filenaam = filenaam.Substring(11, 14)
                ListBox1.Items.Add(filenaam)
            End If
        Next FileName

        Cart.Columns.Add(New Data.DataColumn("Verteg.", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn("EffekLev", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn("Klant", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn(" Datum  ", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn("KollDatum", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn("Artikel", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn("Aantal", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn("Prijs", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn("Omschrijving", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn("Etiket", GetType(String)))
        Cart.Columns.Add(New Data.DataColumn("Info", GetType(String)))
    End Sub

    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
        Dim lntekst As String = ""
        Dim inhoudfile As String = ""
        Cart.Rows.Clear()
        teller = -1
        filenaam = ListBox1.SelectedItem.ToString

        Using sr As New System.IO.StreamReader(Settings.DataPath & filenaam & ".txt")
            While lntekst IsNot Nothing
                lntekst = sr.ReadLine()
                If lntekst Is Nothing Or lntekst = "" Then Exit While
                teller += 1
                dr = Cart.NewRow()
                dr(0) = lntekst.Substring(0, 2)
                dr(1) = lntekst.Substring(2, 4)
                dr(2) = lntekst.Substring(6, 7)
                dr(3) = lntekst.Substring(13, 8)
                dr(4) = lntekst.Substring(21, 8)
                dr(5) = lntekst.Substring(29, 6)
                dr(6) = lntekst.Substring(35, 5)
                dr(7) = lntekst.Substring(40, 8)
                dr(8) = lntekst.Substring(48, 25)
                dr(9) = lntekst.Substring(73, 1)
                dr(10) = lntekst.Substring(74, 25)
                Cart.Rows.Add(dr)
                dr = Nothing
            End While
        End Using
        DataGrid1.DataSource = Cart
    End Sub


Maybe, hopefully, easy to you experts but as I'm still quit a newby...any help is appreciated...

Thx & regards,
Rob

LVL 3
RobbalsAsked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
RobbalsConnect With a Mentor Author Commented:
for anyone who might be interested....

solution was just to add following lines:
        'existing line
        DataGrid1.DataSource = Cart

       'lines to add
        gtsGrid.MappingName = Cart.ToString
        DataGrid1.TableStyles.Add(gtsGrid)
        gtsGrid.GridColumnStyles(0).Width = 90
        gtsGrid.GridColumnStyles(1).Width = 100
        .........

Regards,
Rob
0
 
srinivasbnCommented:
Hi

i am not finding what columns you added for the datagrid. can you send me the datagrid columns what you added and how you added. If you kept readonly for the column level or if you kept the column resize option as false you can't change.

0
 
RobbalsAuthor Commented:

Dear Srinivasbn,

hmm, don' t even understand what you ask here...
I addcolumns to the CART datatable (Cart.Columns.Add(New Data.DataColumn("Verteg.", GetType(String))))
I use a line from a textfile and chop this up into several different items and then trow these items into a row from the datatable..
The result is a nice working datagrid, I can even change values ( by using: DataGrid1.Item(row, column) = newvalue)
So, for me this works okBUT I get all the same sizes for my columns....and for exampl the field "Omschrijving" is about 25 caraters long and thus doesn't fit into the column. (I can resize it while running the program though, but would like to set a default witdh)

Thx for your help.
Regards,
Rob
0
 
RobbalsAuthor Commented:

FOUND IT !!!!!! :-)

had to add:

        Dim gtsGrid As DataGridTableStyle = New DataGridTableStyle
        gtsGrid.MappingName = Cart.ToString  (!!!! cart.tostring did the trick)
        DataGrid1.TableStyles.Add(gtsGrid)
        gtsGrid.GridColumnStyles(0).Width = 100

Thx anyway for ur time!

Regards,
Rob
0
All Courses

From novice to tech pro — start learning today.