OpenFileDialog + RestoreDirectory

0

Witam,
Mam 2 formatki, na każdej z formatek jeden OpenFileDialog. Chciałbym aby każdy OpenFileDialog niezależnie od siebie zapamietywał ścieżkę gdzie ostatnio otwieral plik.
Domyślnie jest to zrobione, iż otiwerając plik z pierwszej formatki OpenFileDialogaiem, po otwarciu open filedialoga domyslnie bedize wybrana sciezka z pierwszej formatki.
Ja chcialbym zrobic aby sciezki zapamietywane byly niezaleznie.
W plik *.config nie mogę ingerować, takze musze szukac innego rozwiazania. Z helpu wynika ze moje zalozenia spelnia RestoreDirectory ale nie działa....
Rejestr oraz inne pliki nie wchodzą w gre.
Pozdrawiam

Mój kod:
OpenFileDialog dlg = new OpenFileDialog();
dlg.DefaultExt = ".csv";
dlg.Filter = "Comma Separated Values (.csv)|*.csv";
dlg.RestoreDirectory = true;
if (dlg.ShowDialog() == DialogResult.OK)
{
//kod
}

0
MSDN napisał(a)

public bool RestoreDirectory { get; set; }

true if the dialog box restores the current directory to its original value if the user changed the directory while searching for files

A więc RestoreDirectory nie powoduje żadnego zapamiętywania, a tylko przywraca przy zamknięciu dialogu aktualną ścieżkę sprzed jego otwarcia. Dialog domyślnie otwiera się na aktualnej ścieżce.

Powiedz na jakim zapamiętywaniu Ci zależy - czy tylko w ramach uruchomionego programu, czy też po jego zamknięciu? To pierwsze osiągnąć łatwo, wystarczy samemu zapamiętywać ścieżki i wstawiać je do dlg.InitialDirectory. Druga opcja będzie wymagała zapisania ścieżek np. w rejestrze. Magii nie ma.

1 użytkowników online, w tym zalogowanych: 0, gości: 1