2017-05-19 19 views
0

初めてボタンをクリックすると機能しますが、その後は何もしません。私はこれをデバッグしようとしていると私はそれを見ているが、私は答えを見つけることができません。私はおそらく明らかな何かに気づいていないだけです。C#ボタンが1回以上発火しない

private void button5_Click(object sender, EventArgs e) 
    { 
     string[] files; 

     files = Directory.GetFiles("Tasks"); 

     foreach (string file in files) 
     { 
      string[] lines; 
      StreamReader reader = new StreamReader(file); 
      lines = File.ReadAllLines(file); 
      tasks.Add(lines[0]); 
      reader.Close(); 
     } 

     listBox1.DataSource = tasks; 
    } 
+1

何もボタンを無効にされていません。最初の行にブレークポイントを配置して、ボタンの2回目の押しでヒットしたかどうかを確認してください。 _(また、2つの 'reader'行を削除してください...あなたはStreamReaderを使用していません。)_ –

+0

@GrantWinneyアドバイスありがとう、私はそれを試してみます。 'reader'行についてもありがとう! –

答えて

0

あなたは問題だが、ボタンではありません。これはリストボックスにあります。データソースの変更が検出されないため、正しく更新されません。

それが変更だ知っているので、更新する前にnullに設定してみてください:

listBox1.DataSource = null; 
listBox1.DataSource = tasks; 

代替方法:

あなたはまた、定期的なリストの代わりにするBindingListを使用することができます。

はここを参照してください:そこに How to refresh DataSource of a ListBox in C# WinForms

関連する問題