2017-08-05 9 views
-7

私はこのような単純な問題について本当に混乱しています。次のコードは毎回増加しません。C#2015 int ++、++ int、int + = 1、int = int +1;問題

int deviceId = 0; 
DeviceCollection coll = DirectSound.GetDevices(); 
foreach (DeviceInformation dev in coll.Skip(1)) 
{ 
    comboBoxDevice.Items.Add(deviceId+": "+dev.Description); 
    deviceId++; 
    comboBoxDevice.SelectedIndex = 0; 
} 

私の出力は次のようになります。

0: speaker1 ..... 
0: speaker2 ..... 
1: speaker3 ..... 

誰が、なぜこの起こった私を言うことができますか?

私はすでにそのようにそれを解決しようとしている:それらのすべてと

++deviceId; 
deviceId += 1; 
deviceId = deviceId+1; 

は、同じ結果を得ました。

+0

'deviceId' defindはどこですか? –

+1

代わりにどんな出力を期待していますか? – Jasen

+6

あなたはあなたが私たちに示したコードへの一回の呼び出しからその出力を得ることはありません。 'deviceId'として' 0'が二度見られることはありません。私の推測では、このコードを複数回呼び出すことです。 [mcve]を入力してください。 –

答えて

0

問題sloved!

 DeviceCollection coll = DirectSound.GetDevices(); 
     foreach (DeviceInformation dev in coll.Skip(1)) 
     { 
      comboBoxDevice.Items.Add(deviceId +": "+ dev.Description); 
      deviceId++;        
     } 
     comboBoxDevice.SelectedIndex = 0; 

私は、コンボボックスのselectedIndexのでDEVICEIDを設定しますコンボボックスにselectedIndexChangedEventを追加しました。したがって、最初のループでは、再びdeviceIdを0に設定します。

関連する問題