Rename file vanuit listview

Status
Niet open voor verdere reacties.

bonnowagt

Gebruiker
Lid geworden
7 dec 2006
Berichten
445
Ik heb een listview met twee kolommen: Deze worden gevuld met files vanaf de harde schijf:
Op de volgende wijze:
ListView1.SelectedItems.Item(0).Text
ListView1.SelectedItems.Item(0).SubItems(1).Text)

In de eerste kolom staat de file geheel gestript
In de tweede kolom naam en fullpath

Bijvoorbeeld.

File van de harde schijf is C:\Foto\huis.jpg

In kolom 1 komt dan: huis
In kolom 2.komt dan: C:\Foto\huis.jpg

Met de functie editlabel wijzig ik dan huis bijv in huisAmsterdam. Dit leverd met editlabel geen probleem op. Maar het wordt dan niet op de harde schijf vastgelegd. Bij het opnieuw opstarten staat er gewoon weer
C:\Foto\huis.jpg en geen C:\Foto\huisAmsterdam.jpg. Uiteraard logisch tot nu toe.

Ik heb overal gezocht voor de code op genoemde file gerenamed vast te leggen op de harde schijf.
Ik kwam niet verder dan: My.Computer.FileSystem.RenameFile(test1,test2)
Als deze code door mij goed is gevonden en hiervoor nodig wat zet ik dan op de plaats van test1 en test2. Ik heb vanalles al geprobeerd maar krijg steeds de melding onjuiste pad etc.
 
Je kan tijdelijk een messagebox gebruiken om de paths the checken. Dat je een melding krijgt dat je paths onjuist zijn ligt helemaal aan jouw, dan doe je simpelweg het pad niet goed. Met een messagebox kun je dat dubbelchecken.

De listview heeft een AfterLabelEdit event. Probeer de rename code eens vanuit dat event.
 
Hallo,

Ja uiteraard heb ik dat ook gedaan en zoals gezegd het remane lukt ook wel daar gaat het ook niet om. Het gaat om het opslaan van de nieuwe filenaam op de harde schijf
 
Ik volg je effe niet. Filename aanpassen kun je met My.Computer.FileSystem.RenameFile doen, wat je al eerder aangaf.
 
Of natuurlijk met

[CPP]IO.File.Move("C:\test.txt", "C:\nieuwenaam.txt")[/CPP]
 
Hallo,

Heb het inmiddels opgelost. Het probleem was :

Heb nu in beforelabeledit:
Eerst het volledige path gedefinieerd:
Code:
TextBoxdir1.Text = System.IO.Path.GetFullPath(ListView1.SelectedItems.Item(0).SubItems(1).Text)
Vervolgens de extensie gedefinnerd die ik na afterlabeledit nodig heb
Code:
TextBoxdir3.Text = System.IO.Path.GetExtension(ListView1.SelectedItems.Item(0).SubItems(1).Text)

In afterlabeledit als volgt:
Eerst de directory gedefinieerd:
Code:
TextBoxdir.Text = (System.IO.Path.GetDirectoryName(ListView1.SelectedItems.Item(0).SubItems(1).Text))
dan is temp de nieuwe filenaam
Code:
TextBoxdir.Text = TextBoxdir.Text + "\" + temp + TextBoxdir3.Text
   My.Computer.FileSystem.RenameFile(TextBoxdir1.Text, TextBoxdir.Text)
 
Laatst bewerkt door een moderator:
Prima, zet je de vraag op opgelost?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan