async Task ExecuteLoadItemsCommand()
        {
            if (IsBusy)
            {
                return;
            }

            IsBusy = true;

            try
            {
                Notes.Clear();
                var notes = await NotesDataStore.GetNotesAsync();

                foreach (var note in notes)
                {
                    Notes.Add(note);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
        public ItemsViewModel()
        {
            Title            = "Browse";
            Notes            = new ObservableCollection <Note>();
            LoadItemsCommand = new Command(async() => await ExecuteLoadItemsCommand());

            MessagingCenter.Subscribe <ItemDetailPage, Note>(this, "SaveNote", async(sender, note) =>
            {
                Notes.Add(note);
                await NotesDataStore.AddItemAsync(note);
            });

            MessagingCenter.Subscribe <ItemDetailPage, Note>(this, "EditNote", async(sender, note) =>
            {
                await NotesDataStore.UpdateItemAsync(note);
            });
        }
 public async void InitializeCourseList()
 {
     courseList = await NotesDataStore.GetCourseAsync();
 }