У меня здесь небольшая проблема.Я хочу перечислить мои файлы из каталога в списке.и когда я дважды щелкаю файлы, я хочу отобразить файл в текстовом поле.
Я получил этот код, но мой каталог при двойном щелчке неверен.
Допустим, я дважды щелкнул battalionAPC.fbi. Отображение каталога в текстовом поле: C: \ Users \ Yvonne \ Documents \ Visual Studio 2010 \ Projects \ ListBoxTest \ ListBoxTest \ bin [Debug \ battalionAPC.fbi]
Но правильный каталог должен быть следующим: C: \ Users \ Yvonne \ Documents \ Visual Studio 2010 \ Projects \ ListBoxTest \ ListBoxTest \ bin [ед. \ Батальон \ APC \ battalionAPC.fbi]
**Различия отмечаются с помощью [] скобок
Есть идеи, как мне получить правильный каталог?
Мой полный код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void populateList(string path)
{
string[] dir = Directory.GetDirectories(path);
foreach (string d in dir)
{
string entry = Path.GetFileName(d);
//listBox1.Items.Add(entry);
populateList(d);
}
string[] files = Directory.GetFiles(path);
foreach (string f in files)
{
string entry1 = Path.GetFullPath(f);
string entry = Path.GetFileName(f);
if (entry.Contains(".fbi"))
{
listBox1.Items.Add(entry);
}
}
}
private void Form1_Load_1(object sender, EventArgs e)
{
populateList(@"..\units\battalion");
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
string file = listBox1.SelectedItem.ToString();
textBox1.Text = file;
string all = Path.GetFullPath(file);
textBox2.Text = all;
}
}
}