private void backSide_checked(object sender, RoutedEventArgs e) { Binding myBinding = new Binding(); myBinding.Source = App.ViewModel; myBinding.Path = new PropertyPath("curCard.CardBackSide"); myBinding.Mode = BindingMode.OneWay; myBinding.UpdateSourceTrigger = UpdateSourceTrigger.Default; QuestionTB.SetBinding(TextBlock.TextProperty, myBinding); qBack.Visibility = Visibility.Collapsed; qFront.Visibility = Visibility.Visible; }
private void AnswerBtn_Click(object sender, RoutedEventArgs e) //answer click on 1tab { if (App.ViewModel.studyDeck.CardItems.Count <= 0) { MessageBoxResult result = MessageBox.Show(AppResources.MessageBox_Text, AppResources.MessageBox_caption, MessageBoxButton.OKCancel); if (result == MessageBoxResult.OK) { workDeck = App.ViewModel.studyDeck; MainPivot.SelectedIndex = 2; deckShow.Text = App.ViewModel.studyDeck.DeckName; } } else { answerCount++; endTest = false; (ApplicationBar.Buttons[0] as ApplicationBarIconButton).IsEnabled = false; countAnsCards.Text = answerCount + "/" + App.ViewModel.studyDeck.CardItems.Count.ToString(); if (QuestionTB.GetBindingExpression(TextBlock.TextProperty).ParentBinding.Path.Path == "curCard.CardFrontSide") { if (App.ViewModel.curCard.CardBackSide == AnswerTB.Text) { AnswerPB.Value += 1; appearanceFalse.Stop(); appearanceTrue.Begin(); } else { appearanceTrue.Stop(); appearanceFalse.Begin(); } } else { if (App.ViewModel.curCard.CardFrontSide == AnswerTB.Text) { AnswerPB.Value += 1; appearanceFalse.Stop(); appearanceTrue.Begin(); } else { appearanceTrue.Stop(); appearanceFalse.Begin(); } } AnswerTB.Text = ""; if (answerCount < App.ViewModel.studyDeck.CardItems.Count) { if ((bool)radBtnRandom.IsChecked) { queue.RemoveAt(cardIndex); cardIndex = rand.Next(App.ViewModel.studyDeck.CardItems.Count - answerCount - 1); App.ViewModel.curCard = App.ViewModel.studyDeck.CardItems[queue[cardIndex]]; } } else { studingField.Visibility = Visibility.Collapsed; resultBorder.Visibility = Visibility.Visible; resultBorder_answTrue.Text = AnswerPB.Value.ToString() + "/" + App.ViewModel.studyDeck.CardItems.Count.ToString(); resultBorder_resultPercent.Text = ((int)((AnswerPB.Value / App.ViewModel.studyDeck.CardItems.Count) * 100)).ToString() + "%"; } } }