Пример #1
0
        private static void OnColumns_Changed(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            KanBanControl kanBanControl = (KanBanControl)d;

            if (kanBanControl._kanBanViewModel != null) //I think we can remove this test since kanBanControl._kanBanViewModel is set in the constructor of KanBanControl
            {
                kanBanControl.HandleColumnsOrItemsSourceChanged();

                if (e.OldValue is ObservableCollection <KanBanColumn> )
                {
                    ((ObservableCollection <KanBanColumn>)e.OldValue).CollectionChanged -= kanBanControl.KanBanControl_ColumnsChanged;
                }
                if (kanBanControl.Columns is ObservableCollection <KanBanColumn> )
                {
                    ((ObservableCollection <KanBanColumn>)kanBanControl.Columns).CollectionChanged -= kanBanControl.KanBanControl_ColumnsChanged;
                    ((ObservableCollection <KanBanColumn>)kanBanControl.Columns).CollectionChanged += kanBanControl.KanBanControl_ColumnsChanged;
                }

                //IEnumerable<KanBanColumn> columns = (IEnumerable<KanBanColumn>)e.NewValue;
                //List<ColumnViewModel> columnViewModels = new List<ColumnViewModel>();
                //foreach (KanBanColumn column in columns)
                //{
                //    columnViewModels.Add(new ColumnViewModel(column, kanBanControl.ItemTemplate));
                //}
                ////todo: add a column for unclassified elements

                //kanBanControl._kanBanViewModel.Columns = columnViewModels;
                //kanBanControl.SetItemsInViewModelColumns(columnViewModels);
            }
        }
Пример #2
0
        private static void ItemsSource_Changed(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            //todo.
            //do nothing for now, redraw when supported.
            KanBanControl kanBanControl = (KanBanControl)d;

            kanBanControl.HandleColumnsOrItemsSourceChanged();
        }