vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   RSS-Feeds  | Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2021
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: DGV-Spaltenreihenfolge speichern/lesen 
Autor: effeff
Datum: 06.11.20 18:38

Also... Ohne XML funktioniert auch eine einfache Textdatei für die Settings:

Public Class Form1
 
    Dim dtDataTable As New DataTable
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        dtDataTableInitialisieren()
        DatensaetzeErzeugen()
        DataGridView1Initialisieren()
 
    End Sub
 
    Private Sub DataGridView1Initialisieren()
        With DataGridView1
            .DataSource = dtDataTable
            '.ReadOnly = True
            .AllowUserToAddRows = False
            .AllowUserToDeleteRows = False
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect
            .MultiSelect = False
            .AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill
            .ScrollBars = ScrollBars.Both
            .RowsDefaultCellStyle.BackColor = Color.White
            .AlternatingRowsDefaultCellStyle.BackColor = Color.AliceBlue
            .AllowUserToOrderColumns = True
        End With
    End Sub
 
    Private Sub dtDataTableInitialisieren()
 
        dtDataTable = New DataTable
        dtDataTable.TableName = "Tabelle"
 
        Dim keys(1) As DataColumn
        Dim column As New DataColumn
        column.DataType = System.Type.GetType("System.Int32")
        With column
            .ColumnName = "ID"
            .AutoIncrement = True
            .AutoIncrementStep = 1
        End With
        dtDataTable.Columns.Add(column)
        keys(0) = column
        dtDataTable.PrimaryKey = keys
 
        column = New DataColumn
        column.DataType = System.Type.GetType("System.String")
        column.ColumnName = "Ort"
        dtDataTable.Columns.Add(column)
 
        column = New DataColumn
        column.DataType = System.Type.GetType("System.String")
        column.ColumnName = "Land"
        dtDataTable.Columns.Add(column)
 
        column = New DataColumn
        column.DataType = System.Type.GetType("System.String")
        column.ColumnName = "Kontinent"
        dtDataTable.Columns.Add(column)
 
        column = New DataColumn
        column.DataType = System.Type.GetType("System.String")
        column.ColumnName = "Status"
        dtDataTable.Columns.Add(column)
 
    End Sub
 
    Private Sub DatensaetzeErzeugen()
        dtDataTable.Rows.Add(Nothing, "Hamburg", "Deutschland", "Europa", _
          "unerledigt")
        dtDataTable.Rows.Add(Nothing, "München", "Bayern", "Europa", "erledigt")
        dtDataTable.Rows.Add(Nothing, "Karlsruhe", "Deutschland", "Eruopa", _
          "unerledigt")
        dtDataTable.Rows.Add(Nothing, "New York", "USA", "Nordamerika", _
        "erledigt")
        dtDataTable.Rows.Add(Nothing, "Nairobi", "Kenia", "Afrika", _
        "unerledigt")
        dtDataTable.Rows.Add(Nothing, "Moskau", "Russland", "Europa", _
        "erledigt")
    End Sub
 
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles _
      Button1.Click
        Dim i As Integer
        Dim sw As New System.IO.StreamWriter("d:\test\columnsettings.txt")
 
        For i = 0 To DataGridView1.Columns.Count - 1
            Dim col As DataGridViewColumn = DataGridView1.Columns(i)
            sw.WriteLine(i & ";" & col.DisplayIndex & ";" & col.Width & ";" & _
              col.Visible)
        Next
        sw.Close()
    End Sub
 
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles _
      Button2.Click
        Dim sr As New System.IO.StreamReader("D:\test\columnsettings.txt")
        Dim line As String = ""
 
        Do While (sr.Peek() >= 0)
 
            line = sr.ReadLine
            Dim arr() As String = line.Split(";")
            Dim iCol As Integer = CInt(arr(0))
            Dim iPos As Integer = CInt(arr(1))
            Dim iWidth As Integer = CInt(arr(2))
            Dim bVisible As Boolean = arr(3)
 
            Dim col As DataGridViewColumn = DataGridView1.Columns(iCol)
 
            With col
                .DisplayIndex = iPos
                .Width = iWidth
                .Visible = bVisible
            End With
        Loop
 
        sr.Close()
 
    End Sub
End Class

EALA FREYA FRESENA

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
DGV-Spaltenreihenfolge speichern/lesen93stefanbla8006.11.20 15:38
Re: DGV-Spaltenreihenfolge speichern/lesen40stefanbla8006.11.20 15:38
Re: DGV-Spaltenreihenfolge speichern/lesen44effeff06.11.20 18:37
Re: DGV-Spaltenreihenfolge speichern/lesen37stefanbla8007.11.20 09:27
Re: DGV-Spaltenreihenfolge speichern/lesen41effeff06.11.20 18:38
Re: DGV-Spaltenreihenfolge speichern/lesen32stefanbla8007.11.20 09:28

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2021 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel