webForumDet fria alternativet

Få ut sökväg som fil ligger i

.NET

8 svar · 795 visningar · startad av Gildebrand

Medlem sedan juni 2009920 inlägg
Frågan#1

Har programmerat en del i C# tidigare (på hobbynivå) så skäms över att behöva ställa den här frågan, men har helt enkelt glömt hur man gör.

Hur får man tillbaka "basen" på en URI?
Om uri1 = C:\Users\Public\Pictures\Sample Pictures\Desert.jpg, hur får jag då tillbaka C:\Users\Public\Pictures\Sample Pictures?

Medlem sedan dec. 2004736 inlägg
#2

Ett alternativ är att du använder dig av FileInfo-klassen:

FileInfo f = new FileInfo("C:\\Users\\Public\\Pictures\\Sample Pictures\\Desert.jpg");
string fullPathToFolder = f.DirectoryName;
DirectoryInfo d = f.Directory;

Som du ser kan du få tillbaka sökvägen som sträng, eller som ett DirectoryInfo-objekt.

Medlem sedan jan. 20023 327 inlägg
#3

Enklast är att använda sig av denna statiska metoden GetDirectoryPath i klassen Path (System.IO) enligt nedan:

string filePath = @"C:\Users\Public\Pictures\Sample Pictures\Desert.jpg";
string folderPath = Path.GetDirectoryName(filePath);
Medlem sedan juni 2009920 inlägg
#4

Har ett litet problem med VS som jag inte vet vad det beror på. När jag ska debugga, så får jag error "XamlParseException was unhandled - The invocation of the constructor on type 'Bildvisare.MainWindows' that matches the specified binding constraints threw an exception.' Line number '3' and line position '9'."

Nån idé om hur man löser detta?

Medlem sedan jan. 20023 327 inlägg
#5

Låter som det är något i din XAML-kod som strular. Kolla upp rad tre MainWindows.xaml?

Medlem sedan juni 2009920 inlägg
#6

Nej det ser bra ut där :/
Felet uppstod efter att jag skulle lägga till några command line arguments, under debug-sidan, men har ändrat tillbaka där nu och har samma problem kvar.

Medlem sedan juni 2009920 inlägg
#7

Snälla, ingen som har en idé om varför jag inte kan debugga?

Medlem sedan jan. 20023 327 inlägg
#8

Hur ser konstruktorn ut för Bildvisare.MainWindows? Känns som att det är där det blir fel.

Här är ett inlägg av en användare som verkar få ett liknande felmeddelande:
http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/4a7f0b6f-f848-4501-95c3-918059e88658

Medlem sedan juni 2009920 inlägg
#9

Hittade felet =)
Hade försökt sätta image1.Source i konstruktorn för MainWindow, men det skulle man tydligen inte göra.

Ska slänga ur mig en till fråga, och om någon moderator tycker det är fel att ta den i samma tråd, feel free att flytta.

Jag kodar en bildvisare, vilken har en metod för att preloada några bilder. Denne vill jag såklart köra i en egen separat tråd och det är inga problem att få igång det. Problemet är att denna metod, preload, jobbar mot ett objekt som körs i en annan tråd, och det verkar inte gillas. Se följande felmeddelande: http://piclair.com/data/cag9c.jpg

Någon idé om hur man kan lösa detta?

259 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)