public GroupPanelItem(@group2 g) { InitializeComponent(); this.g = g; nameTxtBox.Text = g.name; var students = S.DB.student.Local.Where(student => student.cid == g.cid && student.gid == g.gid).ToArray(); listBox.ItemsSource = new ObservableCollection <student2>(students); }
private void ButtonBase_OnClick(object sender, RoutedEventArgs e) { int k = S.DB.group.Where(group => group.cid == cid).Select(group => group.gid).Max(); var g = new @group2() { cid = cid, gid = S.DB.group.Where(group => group.cid == cid).Select(group => group.gid).Max() + 1, name = "새로운 조" }; S.DB.group.Add(g); S.DB.SaveChanges(); AddGroupPanel(g); }
private string GetName(object obj) { if (obj is student2) { student2 s = ((student2)obj); int cnt = S.DB.history.Count(history => history.sid == s.sid); return($"{s.num:D2}. {s.name} ({cnt})"); } if (obj is @group2) { @group2 g = ((@group2)obj); return($"{g.name}"); } return(""); }
private void AddGroupPanel(@group2 g) { var gp = new GroupPanelItem(g); gp.RemoveGroup += (o, students1) => { foreach (var student in students1) { student.gid = -1; localStudents.Add(student); } groupPanel.Children.Remove((GroupPanelItem)o); }; groupPanel.Children.Add(gp); }
private void SelGroup(object sender, RoutedEventArgs e) { @group2[] gPool = GetGroupPool(); @group2 g = gPool[rand.Next(gPool.Length)]; ShowDynamicResults(gPool, g, new Action(() => { if (pickedGroups.Contains(g) == false) { pickedGroups.Add(g); } }), new Action(() => { SelectStudentGroup(g); LoadGroups(); })); }
private void SelectStudentGroup(@group2 g) { student2[] ss = S.DB.student.Where(s => s.cid == cid && s.gid == g.gid).ToArray(); var panel = NamePanel; List <object> objs = new List <object>(); foreach (object obj in panel.Children) { if (obj is ToggleButton) { if (((ToggleButton)obj).Tag is student2) { student2 s = ((ToggleButton)obj).Tag as student2; ((ToggleButton)obj).IsChecked = ss.Contains(s); } } } }