public void AddList()
 {
     var list = new TodoList()
     {
         Title = "New List"
     };
     var item = new TodoItem()
     {
         Title = "New Item"
     };
     list.Items.Add(item);
     lists.Add(list);
     CurrentList = list;
     CurrentItem = item;
 }
Beispiel #2
0
        /// <summary>
        /// Loads all lists.
        /// </summary>
        /// <param name="useCache">
        /// <c>true</c> if the cache should be used when available; otherwise false.
        /// </param>
        /// <returns>
        /// A <see cref="Task"/> that yields the result of the operation.
        /// </returns>
        public async Task<ObservableCollection<TodoList>> LoadListsAsync(bool useCache = true)
        {
            // If cache loaded and cache okay, just return it
            if ((useCache) && (cache != null))
            {
                return cache;
            }

            // Either no cache or cache not allowed

            // Try to load from disk
            cache = await FileHelper.ReadFileAsync<ObservableCollection<TodoList>>(ListFileName, FileHelper.StorageStrategies.Roaming);

            // If still null, that means the file doesn't exist. Create a new list.
            if (cache == null)
            {
                var defaultList = new TodoList()
                {
                    Title = "New List"
                };
                var defaultItem = new TodoItem()
                {
                    Title = "New Item"
                };

                defaultList.Items.Add(defaultItem);

                cache = new ObservableCollection<TodoList>()
                {
                    defaultList
                };
            }

            /*
            cache = new ObservableCollection<TodoList>()
            {
                new TodoList()
                {
                    Title = "Groceries",
                    Items = new ObservableCollection<TodoItem>()
                    {
                        new TodoItem() { Title = "Item A" },
                        new TodoItem() { Title = "Item B" },
                        new TodoItem() { Title = "Item C" },
                        new TodoItem() { Title = "Item D" },
                    }
                },

                new TodoList()
                {
                    Title = "Home Supplies",
                    Items = new ObservableCollection<TodoItem>()
                    {
                        new TodoItem() { Title = "Item A" },
                        new TodoItem() { Title = "Item B" },
                        new TodoItem() { Title = "Item C" },
                        new TodoItem() { Title = "Item D" },
                    }
                },
            };
            */
            return cache;
        }
        public void AddItem()
        {
            if (currentList != null)
            {
                var item = new TodoItem()
                {
                    Title = "New Item"
                };

                currentList.Items.Insert(0, item);
                CurrentItem = item;
            }
        }