private void InitAppParam() { //初始化按钮 _pointLightButtonItems = ButtonItems.Take(20).ToList(); for (var i = 20; i < 28; i++) { _questionLightButtonItems.Add(ButtonItems[i]); } _beginButtonItem = ButtonItems[28]; //初始化继电器 _pointLightRelayItems = RelayItems.Take(20).ToList(); for (var i = 20; i < 28; i++) { _questionLightRelayItems.Add(RelayItems[i]); } for (var i = 28; i < 36; i++) { _styleLightRelayItems.Add(RelayItems[i]); } for (var i = 36; i < 46; i++) { _chargeLightRelayItems.Add(RelayItems[i]); } _roomLightRelayItem = RelayItems[46]; RoomLightHelper.RoomRelayLight = _roomLightRelayItem; MainUI.BreakThird += MainUI_BreakThird; MainUI.BreakUnThird += MainUI_BreakUnThird; }
private async void Callback_Notify(object sender, WcfResultInfo e) { if (e.IsError) { return; } var switchItem = e.Data.ToObject <SwitchItem>(); var buttonItem = ButtonItems.FirstOrDefault(s => s.Number == switchItem.SwitchNumber); if (buttonItem != null) { if (!_timer.Enabled) { _timer.Start(); } else { return; } if (_isCompleted) { return; } var findIndex = ButtonItems.IndexOf(buttonItem) + 1; var sudokuData = _sudokuDatas.Find(s => s.ButtonIndex == findIndex); foreach (var relayIndex in sudokuData.RelayIndexs) { await RelayItems[relayIndex - 1].Control(); } await PlayMusic0(SignKey, "ding.wav"); //await Task.Delay(1000); var result = RelayItems.All(s => s.IsNo); if (result) { _isCompleted = true; _manualResetEvent.Set(); } } }