Hi Manfred,
ich habe jetzt tagelang probiert und komme einfach nicht weiter.
1. Wenn ich neue Verzeichnisse in die DGV_Folders hinzufügen will, wie mache ich das mit der entsprechenden Erweiterung der gebundenen Tabelle?
2. Wie code ich überhaupt bei "Neues Verzeichnis" die mit "dgv_Folders.AllowUserToAddRows = true" freigebene untere Leerzeile, in welche ich den neuen Verzeichnisnamen eingeben möchte?
Das funktioniert schon mal
Private Sub mnu_Ordner_Neu_Click(sender As Object, e As EventArgs) Handles _
mnu_Ordner_Neu.Click
' Anzeige untere Leerzeile
dgv_Folders.AllowUserToAddRows = True
dgv_Folders.ReadOnly = False
dgv_Folders.FirstDisplayedScrollingRowIndex = dgv_Folders.Rows.Count - 1
dgv_Folders.Rows(dgv_Folders.Rows.Count - 1).Cells(1).Selected = True
dgv_Folders.BeginEdit(True)
End Sub Hier bin ich noch am werkeln:
Private Sub dgv_Folders_CellEndEdit(sender As Object, e As _
DataGridViewCellEventArgs) Handles dgv_Folders.CellEndEdit
'Dim nVerz As String
' Prüfen, ob nicht leer
'If dgv_Folders.Rows(dgv_Folders.Rows.Count - 1).Cells(1).Value <> "" Then
' ' Zelle hat Inhalt
' nVerz = (aktivesArchivPfad & dgv_Folders.Rows(
' dgv_Folders.Rows.Count - 2).Cells(1).Value)
' ' Prüfen, ob Verzeichnis bereits existiert
' If IO.Directory.Exists(nVerz) = True Then
' ' Verzeichnis existiert bereits
' MsgBox("Verzeichnis " & Chr(34) & nVerz & Chr(34) & "" & _
"existiert bereits")
' dgv_Folders.Rows(dgv_Folders.Rows.Count - 1).Cells(1).Value =
' ""
' Else
' ' Verzeichnis existiert noch nicht
' My.Computer.FileSystem.CreateDirectory(nVerz)
' End If
'End If
'CreateFilesAndFolders()
End Sub Hier bekomme ich einen Fehler, da ich im RowLeave keine Zeilen entfernen darf:
Private Sub dgv_Folders_RowLeave(sender As Object, e As _
DataGridViewCellEventArgs) Handles dgv_Folders.RowLeave
' Prüfen, ob letzte Zeile
If dgv_Folders.CurrentCell.RowIndex = dgv_Folders.Rows.Count - 1 Then
dgv_Folders.AllowUserToAddRows = False
' Prüfen, ob leer
If dgv_Folders.Rows(dgv_Folders.Rows.Count - 1).Cells( _
1).Value.ToString = "" Then
dgv_Folders.Rows.Remove(dgv_Folders.Rows(dgv_Folders.Rows.Count _
- 1))
End If
End If
dgv_Folders.ReadOnly = True
End Sub Muss ich nach Neu/Rename/Remove von Verzeichnissen jedesmal die Funktion "CreateFilesAndFolders()" aufrufen, oder kann ich diese Änderungen auch direkt in der gebundenen Tabelle des dgv_Folders vornehmen?
3. Woran ich mir auch die Zähne ausbeisse, Deine Function "CreateFilesAndFolders()" funktioniert ja perfekt.
Aber wie mache ich es, wenn ich nur die im dgv_Files angezeigte Dateiliste der an die dgv_Files gebundenen Tabelle aktualisieren lassen will?
Denn wenn ich eine neue Datei anlegen lasse, diese umbenenne oder lösche (hierbei warten dann dieselben Probleme mit dem Ändern der gebundenen Tabelle), muss ja nur die Dateiliste des gewählten und angezeigten Verzeichnisses geupdatet werden.
Würde ich hier jedesmal Deine Function "CreateFilesAndFolders()" aufrufen, würde das bei vielen im Archiv enthaltenen Verzeichnissen und Dateien zu lange dauern.
5. Gibt es denn nicht irgendwelche gute Bücher oder Webseiten, die so was erklären - vor allem mit den gebundenen Tabellen usw.?
Meine VB.net-Bücher lassen sich so gar nicht über diese Themen aus. Und im Web bin ich auch nicht fündig geworden.
Beste Grüsse |