Hallo Ihr,
ich möchte mir ein ListView mit Dateien befüllen lassen + Icons
Ich habe mir aus einem Projekt den Listview Part rausgeholt und habe folgendes gemacht:
1. in einem DataGridview klicke ich eine Spalte Doppelt an .. diese füllt mir meine Variablen und fügt den rest hinzu
das funktioniert auch einwandfrei
2. jetzt möchte icht, dass mir das ListView alles anzeigt was ich in diesem Ordner drin habe
jetzt bekomme ich einen Fehler
an der Stelle
wo ist da das Problem? hat er Probleme .lnk also Verknüpfungen anzuzeigen wegen den Icons evtl.? oder woran liegt das?
Weil sonst habe ich keine Probleme wenn ich in nem Ordner mit dieser Variante Dateien anzeigen lassen möchte wie z.B. Bilder oder so
Wäre schön, wenn mir jemand helfen würde..
ich möchte mir ein ListView mit Dateien befüllen lassen + Icons
Ich habe mir aus einem Projekt den Listview Part rausgeholt und habe folgendes gemacht:
1. in einem DataGridview klicke ich eine Spalte Doppelt an .. diese füllt mir meine Variablen und fügt den rest hinzu
das funktioniert auch einwandfrei
VB.NET-Quellcode
- Label3.Text = "\\" & Quicklaunch & "\user\Anwendungsdaten\Microsoft\Internet Explorer\Quick Launch\"
- LV2Quicklaunch = "\\" & Quicklaunch & "\user\Anwendungsdaten\Microsoft\Internet Explorer\Quick Launch\"
- Label2.Text = "\\" & Startmenu & "\user\Start Menu\"
- LV1Startmenu = "\\" & Startmenu & "\user\Start Menu\"
- Me.LV1Start(LV1Startmenu, ListView1, ImageList1)
2. jetzt möchte icht, dass mir das ListView alles anzeigt was ich in diesem Ordner drin habe
VB.NET-Quellcode
- #Region "Listview füllen mit PC Startmenü"
- Private Sub LV1Start(ByVal folder As String, ByVal ltv As ListView, ByVal imgList As ImageList)
- If String.IsNullOrEmpty(folder) Then Throw New ArgumentNullException("Path")
- Dim locDirInfo As IO.DirectoryInfo = Nothing
- Dim locLtvItem As ListViewItem = Nothing
- With ltv
- Try
- .BeginUpdate()
- ' Spalten und Zeilen zurücksetzen
- .Items.Clear()
- .Columns.Clear()
- ' Spalten hinzufügen
- .Columns.Add("Name", 150, HorizontalAlignment.Left)
- .Columns.Add("Größe (Bytes)", 0, HorizontalAlignment.Right)
- .Columns.Add("Typ", 0, HorizontalAlignment.Left)
- .Columns.Add("Letzte Änderung", 0, HorizontalAlignment.Left)
- ' Darstellung
- .GridLines = True
- .FullRowSelect = True
- .MultiSelect = False
- .View = View.Details
- ' ImageList zurücksetzen
- imgList.Images.Clear()
- ' ImageList zuweisen
- .SmallImageList = imgList
- ' Dateien ermitteln
- locDirInfo = New IO.DirectoryInfo(folder)
- If Not locDirInfo.Exists Then Throw New IO.DirectoryNotFoundException
- For Each locFi As IO.FileInfo In locDirInfo.GetFiles("*.*", IO.SearchOption.TopDirectoryOnly)
- ' Icon zur ImageList hinzufügen - Key = Dateiendung
- If Not imgList.Images.ContainsKey(locFi.Extension) Then
- imgList.Images.Add(locFi.Extension, Icon.ExtractAssociatedIcon(locFi.FullName))
- End If
- locLtvItem = New ListViewItem(New String() {locFi.Name, locFi.Length.ToString("n"), locFi.Extension, locFi.LastAccessTime.ToString})
- locLtvItem.Tag = locFi ' Für spätere Verarbeitung der Datei merken
- locLtvItem.ImageKey = locFi.Extension ' Icon zuweisen
- .Items.Add(locLtvItem)
- Next
- ' Spaltenbreite automatisch anpassen
- '.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent)
- Catch ex As Exception
- Throw ex
- Finally
- .EndUpdate()
- locDirInfo = Nothing
- locLtvItem = Nothing
- End Try
- End With
- End Sub
- #End Region
jetzt bekomme ich einen Fehler
an der Stelle
wo ist da das Problem? hat er Probleme .lnk also Verknüpfungen anzuzeigen wegen den Icons evtl.? oder woran liegt das?
Weil sonst habe ich keine Probleme wenn ich in nem Ordner mit dieser Variante Dateien anzeigen lassen möchte wie z.B. Bilder oder so
Wäre schön, wenn mir jemand helfen würde..