我是C#编码的新手,我有一个文本框,在目录中有文本文件的名称,当我点击列表框中的文本文件时,它应该将文本加载到我的文本框中(名为’ScriptBox’) )
这是我的代码:
private void Form1_Load(object sender, EventArgs e)
{
string User = System.Environment.MachineName;
textBox1.Text = "{CONSOLE} Welcome to Linst, " + User + "!";
directory = new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory + @"Scripts");
files = directory.GetFiles("*.txt");
foreach (FileInfo file in files)
{
listBox1.Items.Add(file.Name);
}
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
var selectedFile = files[listBox1.SelectedIndex];
ScriptBox.Text = File.ReadAllText(selectedFile.FullName); //these parts are the parts that dont work
}
提前致谢!
最佳答案 将以下内容添加到Form1.cs中.这将要做的是当用户单击列表框项时,它将调用(引发事件)“listBox1_MouseClick”方法并将文本框的文本设置为列表框项的文本.我刚刚创建了一个应用程序并实现了下面的工作.
private void listBox1_MouseClick(object sender, MouseEventArgs e)
{
textBox1.Text = listBox1.Text;
}
并将下面的内容添加到Form1.Designer.cs,其中列表框属性的其余部分.下面是订阅一个事件,Form1.cs中的listBox1_MouseClick方法,所以当用户点击一个列表框项时,listBox1_MouseClick方法将运行.
this.listBox1.MouseClick += new MouseEventHandler(this.listBox1_MouseClick);
我希望上述内容有道理.