예제 #1
0
        // Check if Drag & Drop is initiated
        private void ListBox_PreviewMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
        {
            // Handle Doubleclick
            if (e.ClickCount > 1)
                return;

            // Remember DragStartPosition
            dragSource = (ListBox) sender;
            dragStartPoint = e.GetPosition(dragSource);

            // if this element is selected, supress click to allow multiple selections
            var listItem = dragSource.ContainerFromElement((Visual) e.OriginalSource) as FrameworkElement;
            if (listItem == null)
                return;

            currentClickedSchüler = dragSource.ItemContainerGenerator.ItemFromContainer(listItem) as Schueler;

            if (dragSource.SelectedItems.Contains(currentClickedSchüler))
            {
                // Prevent further handling to allow Drag and Drop of multi-selections
                // Remember to handle it later with DragMoveStarted flag
                e.Handled = true;
                DragMoveStarted = true;
            }
        }
예제 #2
0
 public bool RemoveFromCurrentClass(Schueler s)
 {
     // In DB löschen
     SelectedKlasse.Schueler.Remove(s);
     UnitOfWork.Save();
     FreieSchülerListe.Add(s);
     return true;
 }
예제 #3
0
 /// <summary>
 /// Exportiert alle Beobachtungen eines Schülers in Word
 /// </summary>
 public void ExportToWord(Schueler Schüler, Schuljahr Schuljahr, Schule.DataManager.UowSchuleDB UOW = null)
 {
     ExportToWord(Schüler, Schuljahr == null ? 0 : Schuljahr.Startjahr, UOW);
 }
예제 #4
0
        // Public methods
        public bool AddToCurrentClass(Schueler s)
        {
            if (selectedKlasse == null || s == null)
            {
                // Keine Klasse ausgewählt oder invalider Schüler
                return false;
            }

            if (!SelectedKlasse.Schueler.Contains(s))
            {
                // Schüler hinzufügen und speichern
                SelectedKlasse.Schueler.Add(s);
                FreieSchülerListe.Remove(s);
                UnitOfWork.Save();
            }
            return true;
        }
예제 #5
0
        /// <summary>
        /// Exportiert alle Beobachtungen eines Schülers in Word
        /// </summary>
        public void ExportToWord(Schueler Schüler, int Schuljahr = 0, Schule.DataManager.UowSchuleDB UOW = null)
        {
            if (UOW == null)
                UOW = App.Current.FindResource("UnitOfWork") as Groll.Schule.DataManager.UowSchuleDB;

            if (UOW != null)
            {
                ExportSettings.GroupBy = GroupByType.GroupBySchüler;
                var t = from b in UOW.Beobachtungen.GetList()
                        where (b.Schueler) == Schüler && (b.SchuljahrId == Schuljahr|| Schuljahr == 0)
                        select b;

                ExportToWord(t);
            }
        }