Exemplo n.º 1
0
 void GenerateContent()
 {
     if (model.Words.Count != 0)
     {
         Window win = window as Window;
         Grid grid = (Grid)LogicalTreeHelper.FindLogicalNode(win, "DataGrid");
         int index = rand.Next(0, model.Words.Count);
         answer = model.Words[index];
         userAnswer = new char[answer.Word.Length];
         Viewbox translate = DynamicElements.CreateViewBoxLabel(answer.Translate, answer.WordId);
         DynamicElements.SetRowColumnProperties(translate, 1, 0, 2, 1);
         grid.Children.Add(translate);
         Grid targetGrid = DynamicElements.CreateGrid(answer.Word.Length, 1, GridUnitType.Star, GridUnitType.Star);
         targetGrid.Name = "TargetGrid";
         DynamicElements.SetRowColumnProperties(targetGrid, 2, 0, 2, 1);
         grid.Children.Add(targetGrid);
         Grid questGrid = DynamicElements.CreateGrid(answer.Word.Length, 1, GridUnitType.Star, GridUnitType.Star);
         questGrid.Name = "QuestGrid";
         DynamicElements.SetRowColumnProperties(questGrid, 4, 0, 2, 1);
         grid.Children.Add(questGrid);
         FillGrid(Shuffle(answer.Word), questGrid);
         model.Words.RemoveAt(index);
         AddNextComplete(model.Words.Count);
         if (model.Words.Count != 0)
         {
             ((Border)LogicalTreeHelper.FindLogicalNode(win, "NextBord")).Visibility = Visibility.Visible;
         }
         else
         {
             ((Border)LogicalTreeHelper.FindLogicalNode(win, "CompleteBord")).Visibility = Visibility.Visible;
         }
     }
 }
Exemplo n.º 2
0
 Test(WindowState state)
 {
     InitializeComponent();
     grid = DynamicElements.CreateGrid(4, 0, GridUnitType.Star, GridUnitType.Star);
     DynamicElements.SetRowColumnProperties(grid, 0, 1, mainGrid.ColumnDefinitions.Count - 1, mainGrid.RowDefinitions.Count - 1);
     mainGrid.Children.Add(grid);
     this.WindowState = state;
     questFontSize    = WindowStateCheck();
 }
        public void SetMainData(TestsModel test)
        {
            int questCount = 0;

            foreach (QuestionsModel quest in test.Questions)
            {
                int         count = 0;
                Grid        grid  = DynamicElements.CreateGrid(5, quest.Answers.Count + 3, GridUnitType.Star, GridUnitType.Star);
                RichTextBox rtb   = new RichTextBox();
                rtb.Name = "rtb_Question" + quest.Id;
                DynamicElements.SetRowColumnProperties(rtb, count, 1, 4, 2);
                Viewbox number = DynamicElements.CreateViewBoxLabel((questCount + 1) + ".", 0);
                DynamicElements.SetRowColumnProperties(number, count, 0, 1, 1);
                grid.Children.Add(number);
                count += 3;
                rtb.AppendText(quest.Text);
                rtb.FontSize = fontSize;
                grid.Children.Add(rtb);
                foreach (AnswersModel answer in quest.Answers)
                {
                    Border bord = new Border();
                    bord.Margin    = new Thickness(1, 3, 1, 1);
                    bord.MaxHeight = 100;
                    if (answer.UserChoice == true && answer.Rightness == true)
                    {
                        bord.Background = this.FindResource("Green") as Brush;
                    }
                    else if (answer.UserChoice == true)
                    {
                        bord.Background = Brushes.PaleVioletRed;
                    }
                    else if (answer.Rightness == true)
                    {
                        bord.Background = Brushes.LightGreen;
                    }
                    Viewbox vb = new Viewbox();
                    vb.HorizontalAlignment = System.Windows.HorizontalAlignment.Left;
                    CheckBox cb = DynamicElements.CreateCheckBox(answer.UserChoice);
                    vb.Child   = cb;
                    cb.Content = answer.Text;
                    bord.Child = vb;
                    DynamicElements.SetRowColumnProperties(bord, count, 1, 3, 1);
                    count++;
                    grid.Children.Add(bord);
                }
                panel.Children.Add(grid);
                questCount++;
            }
        }
Exemplo n.º 4
0
 public void GenerateContent(List <GroupModel> data)
 {
     foreach (GroupModel el in data)
     {
         Border bord = new Border();
         bord.Style = this.FindResource("MainBorderStyle") as Style;
         bord.Name  = "Border" + el.Group;
         bord.Tag   = el.Group;
         Grid grid = DynamicElements.CreateGrid(2, 5, GridUnitType.Auto, GridUnitType.Auto);
         grid.MinWidth = 188;
         Viewbox vB = DynamicElements.CreateViewBox(0, 0, 2, 1);
         Label   lb = DynamicElements.CreateLabel(el.Name, 16);
         vB.Child = lb;
         grid.Children.Add(vB);
         string[,] labelVal = new string[, ] {
             { "Слов:", el.WordsCount.ToString() }, { "Сложность:", el.Difficult }
         };
         for (int i = 0; i < 2; i++)
         {
             for (int j = 0; j < 2; j++)
             {
                 vB       = DynamicElements.CreateViewBox(i + 1, j, 1, 1);
                 lb       = DynamicElements.CreateLabel(labelVal[i, j], 12);
                 vB.Child = lb;
                 grid.Children.Add(vB);
             }
         }
         Image img = DynamicElements.CreateImage(el.Image, 3, 0, 2, 1, 100);
         grid.Children.Add(img);
         Border border = DynamicElements.CreateBorder(this.FindResource("LearnBorderStyle") as Style, 4, 0, 2, 1);
         border.Margin = new Thickness(3);
         border.Child  = DynamicElements.CreateViewBoxLabel("Изучить", 0);
         grid.Children.Add(border);
         //Button btn = new Button();
         //btn.Style = this.FindResource("ButtonStyle") as Style;
         //DynamicElements.SetRowColumnProperties(btn, 4, 0, 2, 1);
         //grid.Children.Add(btn);
         bord.Child = grid;
         SetContent(bord);
     }
 }