vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

VB.NET - Ein- und Umsteiger
Beispiel Master (Ordner) Child (Dateien) 
Autor: Manfred X
Datum: 31.12.22 18:57

Winforms-Beispiel / ein geeigneter Stammordner muss angegeben werden
Ein Filter beim Enum(m)erieren der Dateien könnte gesetzt werden (*.txt)
Public Class frmFoldersAndFiles
 
    Dim basefolder As String = "C:\xxxxx"  'Basisordner angeben
 
    Dim dtFolders, dtFiles As DataTable
    Dim bsFolders, bsFiles As New BindingSource
    Dim WithEvents dgvFolders, dgvFiles As New DataGridView
    Dim dsFoldersFiles As DataSet
 
    Dim tboFileContent As New TextBox With
        {.Parent = Me, .Left = 10, .Top = 320, .Height = 150, .Width = 600,
        .Multiline = True}
 
 
    Private Sub frmFoldersAndFiles_Load(sender As Object,
                                        e As EventArgs) Handles MyBase.Load
 
        Me.FormBorderStyle = FormBorderStyle.Fixed3D
        Me.Size = New Size(700, 560)
 
        With dgvFolders
            .Size = New Size(300, 300)
            .Location = New Point(10, 10)
            .DataSource = bsFolders
            .Parent = Me
        End With
        With dgvFiles
            .Size = dgvFolders.Size
            .Location = New Point(320, 10)
            .DataSource = bsFiles
            .Parent = Me
        End With
 
        Me.Show()
 
        CreateFilesAndFolders()
    End Sub
 
 
    Private Sub dgvFiles_RowHeaderMouseClick(sender As Object,
          e As DataGridViewCellMouseEventArgs) Handles _
            dgvFiles.RowHeaderMouseClick
 
        'Anzeige einer Textdatei beim Click auf den Zeilenkopf des Grid mit 
        ' Dateien
        '(kann man besser machen)
 
        Dim row As DataGridViewRow = dgvFiles.Rows.Item(e.RowIndex)
        Dim folderid As Integer = CInt(row.Cells("FolderID").Value)
 
        Dim foldername As String =
            dgvFolders.Rows.Item(folderid - 1).Cells("Subfolder").Value.ToString
        Dim filename As String =
            IO.Path.Combine(basefolder, foldername, row.Cells( _
              "Filename").Value.ToString)
 
        Try
            tboFileContent.Text = IO.File.ReadAllText(filename)
            Me.Text = IO.Path.GetFileName(filename)
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub
 
 
    Private Function CreateFilesAndFolders()
 
        dtFiles = New DataTable : dtFolders = New DataTable
 
        'Tabellenspalten erstellen
        With dtFolders
            .TableName = "folders"
            .Columns.Add("ID", GetType(Integer))
            .Columns.Add("Subfolder", GetType(String))
        End With
 
        With dtFiles
            .TableName = "files"
            .Columns.Add("ID", GetType(Integer))
            .Columns.Add("FolderID", GetType(Integer))
            .Columns.Add("Filename", GetType(String))
        End With
 
        'Filesystem-Daten in die Tabellen einlesen
        Dim folderid, fileid As Integer, subfolder As String
        For Each fld As String In
            IO.Directory.GetDirectories(basefolder, "*.*", _
              IO.SearchOption.TopDirectoryOnly)
 
            folderid += 1
            subfolder = fld.Replace(basefolder, "").Replace("\", "")
            dtFolders.Rows.Add(folderid, subfolder)
 
            For Each file As String In
                IO.Directory.EnumerateFiles(fld, "*.*", _
                  IO.SearchOption.TopDirectoryOnly)
 
                fileid += 1
                dtFiles.Rows.Add(fileid, folderid, IO.Path.GetFileName(file))
            Next file
        Next fld
 
        'Dataset zusammenstellen
        dsFoldersFiles = New DataSet
        With dsFoldersFiles.Tables
            .Add(dtFolders)
            .Add(dtFiles)
        End With
 
        'Datarelation für Master->Child
        Dim pc As DataColumn = dtFolders.Columns("ID")
        Dim cc As DataColumn = dtFiles.Columns("FolderID")
        dsFoldersFiles.Relations.Add("FoldersFiles", pc, cc)
 
        'Parent-Child-Koordination
        bsFolders.DataSource = dsFoldersFiles
        bsFolders.DataMember = "Folders"
 
        bsFiles.DataMember = "FoldersFiles"
        bsFiles.DataSource = bsFolders
 
        'nach Belieben .....
        dgvFolders.Columns("ID").Visible = False
        dgvFiles.Columns("FolderID").Visible = False
    End Function
End Class
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
ListView Markierung der Selektion immer anzeigen...784Dideldum30.12.22 17:47
Re: ListView Markierung der Selektion immer anzeigen...527Manfred X30.12.22 17:56
Re: ListView Markierung der Selektion immer anzeigen...349Dideldum30.12.22 18:14
Re: ListView Markierung der Selektion immer anzeigen...433Manfred X30.12.22 18:31
Re: ListView Markierung der Selektion immer anzeigen...350Dideldum30.12.22 18:52
Re: ListView Markierung der Selektion immer anzeigen...419Manfred X30.12.22 19:01
Re: ListView Markierung der Selektion immer anzeigen...287Dideldum30.12.22 19:26
Re: ListView Markierung der Selektion immer anzeigen...386Manfred X30.12.22 19:38
Re: ListView Markierung der Selektion immer anzeigen...297Dideldum30.12.22 19:40
Re: ListView Markierung der Selektion immer anzeigen...417Manfred X30.12.22 20:55
Re: ListView Markierung der Selektion immer anzeigen...367Dideldum30.12.22 19:45
Re: ListView Markierung der Selektion immer anzeigen...293Dideldum30.12.22 20:17
Re: ListView Markierung der Selektion immer anzeigen...293Dideldum30.12.22 21:05
Beispiel Master (Ordner) Child (Dateien)372Manfred X31.12.22 18:57
Nachgereicht373Manfred X01.01.23 11:14
Re: ListView Markierung der Selektion immer anzeigen...280Dideldum01.01.23 15:00
Re: ListView Markierung der Selektion immer anzeigen...374Manfred X01.01.23 19:23
Re: ListView Markierung der Selektion immer anzeigen...295Dideldum02.01.23 04:21
Re: ListView Markierung der Selektion immer anzeigen...353Manfred X02.01.23 15:27
Re: ListView Markierung der Selektion immer anzeigen...395Dideldum02.01.23 15:30
Re: ListView Markierung der Selektion immer anzeigen...461Manfred X02.01.23 16:05
Re: ListView Markierung der Selektion immer anzeigen...302Dideldum02.01.23 15:39
Re: ListView Markierung der Selektion immer anzeigen...257Dideldum02.01.23 17:34
Übersicht DatagridView Styles335Manfred X02.01.23 18:06
Re: ListView Markierung der Selektion immer anzeigen...327Dideldum02.01.23 18:35
Re: ListView Markierung der Selektion immer anzeigen...254Dideldum02.01.23 18:37
Re: ListView Markierung der Selektion immer anzeigen...255Dideldum02.01.23 19:57
Re: ListView Markierung der Selektion immer anzeigen...264Dideldum02.01.23 21:38
Re: ListView Markierung der Selektion immer anzeigen...353Manfred X02.01.23 22:53
Re: ListView Markierung der Selektion immer anzeigen...265Dideldum02.01.23 22:08
Re: ListView Markierung der Selektion immer anzeigen...271Dideldum02.01.23 22:31
Re: ListView Markierung der Selektion immer anzeigen...329Dideldum02.01.23 22:48
Re: ListView Markierung der Selektion immer anzeigen...312Dideldum03.01.23 15:34
Re: ListView Markierung der Selektion immer anzeigen...344Manfred X03.01.23 18:00
Re: ListView Markierung der Selektion immer anzeigen...291Dideldum03.01.23 19:00
Beispiel für Formatieren und Sortieren von Byteangaben324Manfred X03.01.23 19:05
Re: ListView Markierung der Selektion immer anzeigen...287Dideldum03.01.23 19:59
Re: ListView Markierung der Selektion immer anzeigen...263Dideldum03.01.23 20:24
Re: ListView Markierung der Selektion immer anzeigen...331Manfred X03.01.23 20:55
Re: ListView Markierung der Selektion immer anzeigen...272Dideldum03.01.23 20:47
Re: ListView Markierung der Selektion immer anzeigen...256Dideldum03.01.23 20:50
Re: ListView Markierung der Selektion immer anzeigen...333Dideldum03.01.23 21:13
Re: ListView Markierung der Selektion immer anzeigen...333Manfred X03.01.23 22:02
Re: ListView Markierung der Selektion immer anzeigen...291Dideldum04.01.23 21:58
Re: ListView Markierung der Selektion immer anzeigen...294Dideldum10.01.23 19:10
Re: ListView Markierung der Selektion immer anzeigen...311Manfred X11.01.23 12:10
Re: ListView Markierung der Selektion immer anzeigen...287Dideldum11.01.23 18:18
Re: ListView Markierung der Selektion immer anzeigen...264Manfred X11.01.23 19:07
Re: ListView Markierung der Selektion immer anzeigen...243Dideldum11.01.23 18:49
Re: ListView Markierung der Selektion immer anzeigen...274Manfred X11.01.23 18:55
Re: ListView Markierung der Selektion immer anzeigen...255Dideldum11.01.23 20:03
Re: ListView Markierung der Selektion immer anzeigen...270Manfred X11.01.23 20:23
Re: ListView Markierung der Selektion immer anzeigen...253Dideldum11.01.23 20:39
Re: ListView Markierung der Selektion immer anzeigen...190Dideldum20.03.23 17:05

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-2024 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