Вы можете попытаться получить строку пути и разделить ее на несколько частей. Затем сохраните их в нескольких текстовых полях, ярлыках, кнопках или что угодно. Моя форма выглядит следующим образом: Форма изображения
Во-вторых, вам придется обновить эти (в моем случае) текстовые поля, чтобы сохранить путь. Посмотрите мой код и решите, что вы хотите использовать, и если вам нужно его изменить.
private void changePath()
{
String path = webBrowser1.Url.AbsolutePath;
if (path.Contains(@"/")) { path = path.Replace(@"/", @"\"); }
string[] directories = path.Split(Path.DirectorySeparatorChar);
int count = directories.Count();
if (count <= 6)
{
textBox1.Text = ""; textBox2.Text = ""; textBox3.Text = ""; textBox4.Text = ""; textBox5.Text = ""; textBox6.Text = "";
for (int i = 0; i < count; i++)
{
String txt = "textBox" + (i + 1);
TextBox tbx = this.Controls.Find(txt, true).FirstOrDefault() as TextBox;
tbx.Text = directories[i];
}
}
else
{
int p = count / 6;
int z = count - (p * 6);
for (int i = 0; i < count; i++)
{
int g = i - 1;
String txt = "textBox" + (i + 1);
TextBox tbx = this.Controls.Find(txt, true).FirstOrDefault() as TextBox;
tbx.Text = directories[z];
z++;
if (i == 5)
{
break;
}
}
}
}
Второй шаг - сделать функции щелчка по (в моем случае) текстовыми полями. Вот один из примеров того, как вы можете это сделать. Убедитесь сами, что вы можете сделать.
private void textBox5_Click(object sender, EventArgs e)
{
if(!textBox5.Text.Equals(String.Empty))
{
String p = webBrowser1.Url.AbsolutePath;
if(!textBox6.Text.Equals(String.Empty))
{
webBrowser1.Url = new Uri(p.Replace(@"/" + textBox6.Text, ""));
}
}
}
Этот код удалит последний фрагмент, оставив вам новый путь. Пример:
До: C: \ Users \ USERNAME \ Desktop \ C #
После:
После: C: \ Users \ИМЯ ПОЛЬЗОВАТЕЛЯ \ Рабочий стол
Опять же, вы должны посмотреть, что работает для вас. Есть несколько способов решить вашу проблему.
Удачи!
Twan.