2017-09-08 4 views
0

私はにも慣れていません。C#winformのプログラミングです。以下 は、このコードは、"ステップ2"を渡されたことがない私のコード.NETにCheck ItemListBoxを追加すると、常にエラーがスローされますか?

List<string> contacts = (List<string>)message; 
Console.WriteLine(">>> REFRESH CONTACTS..."); 
for (int n = 0; n < contacts.Count; n++) 
{ 
    Console.WriteLine("Step 1"); 
    if (!listBox1.Items.Contains(contacts[n])) 
    { 
     Console.WriteLine("Step 2"); 
     listBox1.Items.Insert(n, contacts[n]); 
     Console.WriteLine("Step 3"); 
    } 
    Console.WriteLine("Step 4"); 
} 

で、エラーメッセージは次のとおりです。

Exception thrown: 'System.InvalidOperationException' in System.Windows.Forms.dll 

WHY?

+0

このメッセージは一般的なものです。 [デバッグ]メニューの[例外...]を選択し、[共通言語ランタイム例外]の横にある[スロー]オプションをオンにします。エラーの特定に役立ちます。 –

+0

'message'の作成方法のコードを提供してください。あなたが投稿したコードは私のために働いていました。 –

+0

はlistbox1にバインドされていますか?クロススレッドコールをしないのは本当ですか? – user12345

答えて

0
List<string> contacts = new List<string>(); 
    contacts.Add("message"); 
    Console.WriteLine(">>> REFRESH CONTACTS..."); 

for (int n = 0; n < contacts.Count; n++) 
{ 
    Console.WriteLine("Step 1"); 
    if (!listBox1.Items.Contains(contacts[n])) 
    { 
     Console.WriteLine("Step 2"); 
     listBox1.Items.Insert(n, contacts[n]); 
     Console.WriteLine("Step 3"); 
    } 
    Console.WriteLine("Step 4"); 
} 
関連する問題