예제 #1
0
        private void UsuńKlocekZwracającyWartość(object obiektKlocka)
        {
            KlocekZwracającyWartość usuwanyKlocek = (KlocekZwracającyWartość)obiektKlocka;
            WartośćWewnętrznegoKlockaZwracającegoWartość miejsceUmieszczenia = usuwanyKlocek.MiejsceUmieszczenia;

            miejsceUmieszczenia[0] = null;

            DodajDziałanie(new ManipulacjaKlockiemZwracającymWartość(ManipulacjeKlockiem.Usunięcie, usuwanyKlocek)
            {
                Cel = miejsceUmieszczenia
            });
        }
예제 #2
0
        protected override object ZwróćNiebezpiecznie(bool sprawdzanieBłędów)
        {
            ZmiennaTypuListowego lista = new ZmiennaTypuListowego();

            foreach (WartośćWewnętrznegoKlockaZwracającegoWartość wartośćKlockaPrzyjmującegoWartość in Elementy)
            {
                KlocekZwracającyWartość klocekZwracającyWartość = wartośćKlockaPrzyjmującegoWartość[0];

                if (klocekZwracającyWartość != null)
                {
                    lista.Add(klocekZwracającyWartość.Zwróć <object>(false));
                }
            }

            return(lista);
        }
예제 #3
0
        public void DragOver(IDropInfo dropInfo)
        {
            KlocekZwracającyWartość upuszczanyKlocek = dropInfo.Data as KlocekZwracającyWartość;
            WartośćWewnętrznegoKlockaZwracającegoWartość wartośćKlockaPrzyjmującegoWartość = (WartośćWewnętrznegoKlockaZwracającegoWartość)dropInfo.TargetCollection;
            DragDropEffects efektUpuszczenia;
            Type            zwracanyTyp = upuszczanyKlocek?.ZwracanyTyp;

            if ((upuszczanyKlocek != null) && ((zwracanyTyp == null) || wartośćKlockaPrzyjmującegoWartość.PrzyjmowanyTyp.IsAssignableFrom(zwracanyTyp)))
            {
                efektUpuszczenia           = upuszczanyKlocek.ZPrzybornika ? DragDropEffects.Copy : DragDropEffects.Move;
                dropInfo.DropTargetAdorner = DropTargetAdorners.Highlight;
            }
            else
            {
                efektUpuszczenia = DragDropEffects.None;
            }

            dropInfo.Effects = efektUpuszczenia;
        }
예제 #4
0
        public void Drop(IDropInfo dropInfo)
        {
            WartośćWewnętrznegoKlockaZwracającegoWartość docelowaKolekcja = (WartośćWewnętrznegoKlockaZwracającegoWartość)dropInfo.TargetCollection;
            KlocekZwracającyWartość upuszczanyKlocek = (KlocekZwracającyWartość)dropInfo.Data;

            upuszczanyKlocek.MiejsceUmieszczenia = docelowaKolekcja;
            upuszczanyKlocek.ZPrzybornika        = false;
            docelowaKolekcja[0] = upuszczanyKlocek;
            ManipulacjaKlockiemZwracającymWartość manipulacja = new ManipulacjaKlockiemZwracającymWartość(ManipulacjeKlockiem.Dodanie, upuszczanyKlocek)
            {
                Cel = docelowaKolekcja
            };
            WartośćWewnętrznegoKlockaZwracającegoWartość źródło = dropInfo.DragInfo.SourceCollection as WartośćWewnętrznegoKlockaZwracającegoWartość;

            if (źródło != null)
            {
                manipulacja.Źródło = źródło;
            }

            _metodaZachowującaStanAplikacji(manipulacja);
        }