以下是我修改過後的
刪除按鈕
目前有個問題
執行後 可以成功進行第一次刪除
但是第二次就會卡住..
重開程式後 還是一樣
第一次成功 第二次卡住
private void button1_Click(object sender, EventArgs e)
{
dt.Clear();
ListBox.SelectedIndexCollection sic =
this.listBox1.SelectedIndices;
StreamReader item = new StreamReader("product.txt",
Encoding.UTF8);
while (!item.EndOfStream)
{
string[] item2 = item.ReadLine().Split(' ');
dr = dt.NewRow();
dr["Key"] = item2[0];
dr["Value"] = item2[1] + " " + item2[2];
dt.Rows.Add(dr["Value"], dr["Key"]);
}
item.Close();
int count = listBox1.SelectedItems.Count;
if (count > 1)
{
if (sic.Count == 0)
{
MessageBox.Show("您沒有選取任何項目。");
}
else
{
for (int i = 0; i < sic.Count; i++)
{
list.Add(sic[i]);
}
list.Sort();
for (int j = 0; j < sic.Count; j++)
{
int a = list[list.Count - (j + 1)];
dt.Rows.Remove(dt.Rows[a]);
MessageBox.Show(a.ToString());
}
}
}
StreamWriter sw = new StreamWriter("product.txt");
for (int i = 0; i < dt.Rows.Count; i++)
{
sw.WriteLine(dt.Rows[i]["Key"].ToString() + " " +
dt.Rows[i]["Value"].ToString());
}
sw.Close();
BindingSource bs = new BindingSource();
bs.DataSource = dt;
listBox1.DataSource = bs;
listBox1.DisplayMember = "Value";
listBox1.ValueMember = "Key";
dt.AcceptChanges();
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.117.9.219