| |

VB.NET - Ein- und UmsteigerLinks in ListView ziehen + Icon und Linknamen auslesen | |  | Autor: A2009W | Datum: 30.06.09 17:05 |
| Hallo zusammmen,
da mein Hirn heute bei so hohen Temerparaturen offenbar eine Auszeit nimmt, möchte ich mal hier fragen, ob ihr mir zu folgendem Code einen Tipp geben könnt, wie man wenn man über das ListView eine Verknüpfung vom Desktop per Drag&Drop zieht auch das Icon und den vergebenen Namen der Verknüfpung ermitteln kann ?
Ziel ist es hier, eine Art Linkliste der vielen Desktoplinks in ein ListView zu packen und dem Anwender so eine Verknüpfungsliste an die Hand zu geben die unabhängig von seinem Profil ist, damit diese von verschiedenen PCs genutzt werden kann...
Das Drag&Drop klappt in soweit schon, dass der Linkinhalt, also der Pfad zur Datei übernommen wird, welcher dann bei einem Klickereignis dazu führen soll, diesen Link aufzurufen...
Später möchte ich das Formular auf des Desktop kleben/einbetten und so die Liste, wie die normalen Desktopicons verfügbar zu haben, aber halt unabhängig vom Userprofil
Aussehen sollte das später dann so und der User kann die Links dann simple über Drag&Drop hinzufügen:
Hier der Code, der bisher die Dateipfade in das Listview übernimmt:
Private Function ResolveShellLink(ByVal name As String) As String
'--- Find the target for a short-cut
If String.Compare(Path.GetExtension(name), ".lnk", True) <> 0 Then _
Return name
Dim shl As New Shell32.Shell
Dim dir As Shell32.Folder = shl.NameSpace(Path.GetDirectoryName(name))
Dim itm As Shell32.FolderItem = dir.Items().Item(Path.GetFileName(name))
Dim lnk As Shell32.ShellLinkObject = CType(itm.GetLink, _
Shell32.ShellLinkObject)
Return lnk.Path
End Function
Private Sub ListView1_DragDrop(ByVal sender As System.Object, ByVal e As _
System.Windows.Forms.DragEventArgs) Handles ListView1.DragDrop
If e.Data.GetDataPresent("FileNameW", False) Then
Dim names As System.Array = CType(e.Data.GetData("FileNameW", _
False), System.Array)
ListView1.Items.Add(ResolveShellLink(CStr(names.GetValue(0))))
End If
End Sub
Private Sub ListView1_DragOver(ByVal sender As System.Object, ByVal e As _
System.Windows.Forms.DragEventArgs) Handles ListView1.DragOver
If e.Data.GetDataPresent("FileNameW", False) Then
e.Effect = DragDropEffects.Copy
Else
e.Effect = DragDropEffects.None
End If
End Sub Vielen Dank im Voraus, ob und wie man das am geschicktesten umsetzen könnte
Gruß A2009W |  |
 Links in ListView ziehen + Icon und Linknamen auslesen | 1.302 | A2009W | 30.06.09 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 |
  |
|
Neu! sevPopUp 2.0 
Dynamische Kontextmenüs!
Erstellen Sie mit nur wenigen Zeilen Code Kontextmenüs dynamisch zur Laufzeit. Vordefinierte Styles (XP, Office, OfficeXP, Vista oder Windows 8) erleichtern die Anpassung an die eigenen Anwendung... Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2025 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
|
|