public KanbanColumn AddColumn(StatusData status)
        {
            ColumnCount++;
            KanbanColumn column = new KanbanColumn(this, status);

            foreach (TaskData task in status.Tasks)
            {
                column.AddRow(task);
            }
            columns.Items.Add(column.AsBorderedColumn());
            return(column);
        }
        public void MoveTaskCard(KanbanColumn column, KanbanTaskCard item, int index)
        {
            KanbanColumn oldColumn = item.Parent as KanbanColumn;

            if (column.Equals(oldColumn) && column.Items.IndexOf(item) < index)
            {
                index--;
            }

            oldColumn.Items.Remove(item);
            column.AddRow(item.Data, index);
            item = null;

            oldColumn.UpdateHeader();
            column.UpdateHeader();

            oldColumn.SaveData();
            column.SaveData();
        }