Hej Brian,
Personligt ville jeg nok bare have en utility/extension method der sørgede for det, men jeg har også arbejdet en del med kode hvor sådan en funktion kunne bruges mange steder
. Basalt set drejer det sig jo blot om at se om ens string ender på det man skal bruge, og så appende den hvis det ikke er tilfældet. I min Utils klasse har jeg en statisk metode der ser nogenlunde sådan her ud:
- public static string EnsureEndingSlash(string path)
- {
- if(!path.EndsWith(@"\"))
- path = path + @"\";
- return path;
- }
Med sådan en kunne din kode så omskrives til:
- textBoxPictures.Text = Utils.EnsureEndingSlash(folderBrowserDialog1.SelectedPath.ToString());
Jeg har i øvrigt også en overload der tager en ekstra parameter, der angiver om det er en forward eller en backslash jeg skal bruge, men det har du sikkert ikke brug for. Alternativt kan du bruge noget mere platforms uafhængigt i form af Path.PathSeparator.
Edit: Som sagt kan det også gøres med en Extension Method, fx sådan her:
- public static class ExtensionMethods
- {
-
- public static string EnsureEndingSlash(this string path)
- {
- if(!path.EndsWith(@"\"))
- path = path + @"\";
- return path;
- }
- }
Der så kan bruges sådan her:
- textBoxPictures.Text = folderBrowserDialog1.SelectedPath.EnsureEndingSlash();
Mvh.
Kasper (TSW)
Indlæg senest redigeret d. 27.04.2011 14:32 af Bruger #1