Hallo liebe Menschen,
ich habe mal weider ein Problem und zwar werden die Icons die ich mit hilfe einer sub in eine ImageLost Packe in der TreeView Falsch angezeigt oder sie werden von der Sub Falsch geladen.
ich habe mal weider ein Problem und zwar werden die Icons die ich mit hilfe einer sub in eine ImageLost Packe in der TreeView Falsch angezeigt oder sie werden von der Sub Falsch geladen.
VB.NET-Quellcode
- Async Sub getDriver()
- tvFolders.Nodes.Clear()
- ilAutoIcoTreeView.Images.Clear()
- For Each Drive In System.Environment.GetLogicalDrives()
- Dim ico As Icon = Await GetFIcon(Drive.ToString)
- ilAutoIcoTreeView.Images.Add(ico.ToBitmap)
- With tvFolders.Nodes.Add(Drive.ToString)
- .ImageIndex = ilAutoIcoTreeView.Images.Count - 1
- End With
- 'tvFolders.Nodes(tvFolders.Nodes.Count - 1).ImageIndex = ilAutoIcoTreeView.Images.Count - 1
- Next
VB.NET-Quellcode
- Async Function GetFIcon(ByVal sFilePath As String) As Task(Of System.Drawing.Icon)
- Dim hImgSmall As IntPtr 'The handle to the system image list.
- Dim hImgLarge As IntPtr 'The handle to the system image list.
- 'The file name to get the icon from.
- Dim shinfo As SHFILEINFO
- shinfo = New SHFILEINFO()
- shinfo.szDisplayName = New String(Chr(0), 260)
- shinfo.szTypeName = New String(Chr(0), 80)
- Try
- hImgSmall = SHGetFileInfo(sFilePath, 0, shinfo,
- Marshal.SizeOf(shinfo),
- SHGFI_ICON Or SHGFI_LARGEICON)
- Catch ex As Exception
- End Try
- 'Use this to get the small icon.
- 'Use this to get the large icon.
- 'hImgLarge = SHGetFileInfo(fName, 0,
- 'ref shinfo, (uint)Marshal.SizeOf(shinfo),
- 'SHGFI_ICON | SHGFI_LARGEICON);
- 'The icon is returned in the hIcon member of the
- 'shinfo struct.
- Dim myIcon As System.Drawing.Icon
- myIcon = System.Drawing.Icon.FromHandle(shinfo.hIcon)
- Return myIcon
- nIndex = nIndex + 1
- End Function