private void AddSequenceRowButton_Click(object sender, RoutedEventArgs e) { if (timeTextBox.Text == "") { MessageBox.Show("Lisää riville kesto (ms)", "Virhe"); } else { // Lisätään uusi rivi listaan PlayListRow newRow = new PlayListRow(); int status1 = 0; int status2 = 0; // Luetaan radiobuttonit bool red0 = (bool)redRadio0.IsChecked; status1 = red0 ? 0 : 1; bool blue0 = (bool)blueRadio0.IsChecked; status2 = blue0 ? 0 : 1; newRow.Time = int.Parse(timeTextBox.Text); newRow.PinId1 = 26; newRow.Status1 = status1; newRow.PinId2 = 19; newRow.Status2 = status2; newList.addRow(newRow); SequenceEditListBox.ItemsSource = newList.PlayListRows; SequenceEditListBox.Items.Refresh(); } }
private void PlayButton_Click(object sender, RoutedEventArgs e) { // Play-nappia painettu, toistetaan sekvenssi var selectedSequence = this.SequencesComboBox.SelectedItem as LedSequence; if (selectedSequence != null) { PlayList uusiLista = new PlayList(); try { using (var loadSequences = new SequenceContext()) { int time = 0; int pinId1 = 0; int status1 = 0; int pinId2 = 0; int status2 = 0; SequenceNameTextBox.Text = selectedSequence.Name; var sequenceId = selectedSequence.Id; /* * var query = loadSequences.TimeRows * .Include(c => c.LedRows) * .ToArray(); */ var query = ( from timer in loadSequences.TimeRows join leds in loadSequences.LedRows on timer.Id equals leds.TimeRow.Id join sekvenssi in loadSequences.LedSequences on timer.LedSequence.Id equals sekvenssi.Id where sekvenssi.Id.Equals(sequenceId) select new { sequencedId = timer.LedSequence.Id, sequenceName = timer.LedSequence.Name, timeRowId = timer.Id, time = timer.Time, ledRowId = leds.Id, ledPinId = leds.PinId, ledStatus = leds.Status }).ToArray(); PlayListRow playListRow = new PlayListRow(); int count = 0; foreach (var sequence in query) { if (count % 2 == 0) { time = sequence.time; pinId1 = sequence.ledPinId; status1 = sequence.ledStatus; } else { pinId2 = sequence.ledPinId; status2 = sequence.ledStatus; PlayListRow listanrivi = new PlayListRow(time, pinId1, status1, pinId2, status2); uusiLista.addRow(listanrivi); } count++; } } } catch (Exception) { throw; } PlaySequence(uusiLista); } }