private void _現在選択されている入力リストの入力行を割り当て済み入力リストに追加する() { foreach (var itemobj in this.listView入力リスト.SelectedItems) { if ((itemobj is ListViewItem入力リスト用 item) && // 選択されているのが ListViewItem入力リスト用 じゃなければ何もしない。 (item.割り当て可能)) // 割り当て可能のもののみ割り当てる。 { var idKey = new システム設定.IdKey(item.inputEvent); switch (item.deviceType) { case InputDeviceType.Keyboard: this._変更後のシステム設定.キーボードtoドラム[idKey] = this._現在選択されているドラム入力種別; // 追加または更新 this._割り当て済みリストを更新する(item); this.listView割り当て済み入力リスト.Focus(); this._変更あり = true; break; case InputDeviceType.MidiIn: this._変更後のシステム設定.MIDItoドラム[idKey] = this._現在選択されているドラム入力種別; // 追加または更新 this._割り当て済みリストを更新する(item); this.listView割り当て済み入力リスト.Focus(); this._変更あり = true; break; } } } }
public システム設定.IdKey idKey; // DeviceID, key public ListViewItem割り当て済み入力リスト用(InputDeviceType deviceType, システム設定.IdKey idKey) { this.割り当て可能 = true; this.deviceType = deviceType; this.idKey = idKey; switch (deviceType) { case InputDeviceType.Keyboard: this.Text = $"Keyboard, {idKey.key}, '{( (Keys) idKey.key ).ToString()}'"; break; case InputDeviceType.MidiIn: this.Text = $"MidiIn[{idKey.deviceId}], Note:{idKey.key}"; break; default: throw new ArgumentException("未対応のデバイスです。"); } }