【发布时间】:2012-11-30 18:02:39
【问题描述】:
我有一个显示文本文件行的列表框。我怎样才能做到这一点,以便我可以单击列表框中的项目并将其从列表框和文本文件中删除
private void Read()
{
string filePath = @"//Filepath";
List<String> listOfDels = viewlist.listDeliveries();
using (var streamReader = new StreamReader(filePath, Encoding.Default))
{
while (!streamReader.EndOfStream)
{
listOfDels.Add(streamReader.ReadLine());
listBox1.Items.Clear();
listBox1.Items.AddRange(listOfDels.ToArray());
}
}
}
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{ //Remove line from txt file
}
【问题讨论】:
-
你为什么每次读一行都清除
Items? -
当我添加更多项目时更新它
-
我认为你做错了什么。您正在向列表中添加数据,然后立即清除列表——很多很多次。将 Clear 和 AddRange 调用移到 while 循环之外。
-
我知道这可能是“技术上”的错误,但它暂时有效。我只想知道如何通过选定的索引删除一行
-
另外,您可以拨打
File.ReadAllLines(filePath)。
标签: c# selecteditem selectedindexchanged