Exemple #1
0
        private async void GetFilesButton_Click(Object sender, RoutedEventArgs e)
        {
            ShowFiles();

            try
            {
                if (FoldersListView.SelectedItem != null)
                {
                    selectedFolder = ((Models.Folder)FoldersListView.SelectedItem);

                    files = await graphClient.Me.Drive.Items[selectedFolder.Id]
                            .Children.Request()
                            .Select("id,name,size,weburl")
                            .Filter("folder eq null").GetAsync();
                }
                else
                {
                    files = await graphClient.Me.Drive.Root.Children.Request()
                            .Select("id,name,size,weburl")
                            .Filter("folder eq null").GetAsync();
                }

                MyFiles = new ObservableCollection <Models.File>();

                while (true)
                {
                    foreach (var file in files)
                    {
                        MyFiles.Add(new Models.File
                        {
                            Id   = file.Id,
                            Name = file.Name,
                            Size = Convert.ToInt64(file.Size),
                            Url  = file.WebUrl
                        });
                    }

                    if (files.NextPageRequest == null)
                    {
                        break;
                    }
                    files = await files.NextPageRequest.GetAsync();
                }

                DriveItemCountTextBlock.Text = $"You have {MyFiles.Count()} files";
                FilesListView.ItemsSource    = MyFiles;
            }
            catch (ServiceException ex)
            {
                DriveItemCountTextBlock.Text = $"We could not get files: {ex.Error.Message}";
            }
        }
Exemple #2
0
        private async void FoldersListView_SelectionChanged(Object sender, SelectionChangedEventArgs e)
        {
            if (FoldersListView.SelectedItem != null)
            {
                selectedFolder = ((Models.Folder)FoldersListView.SelectedItem);

                myFolder = await graphClient.Me.Drive.Items[selectedFolder.Id]
                           .Request().GetAsync();

                FolderNameTextBlock.Text = myFolder.Name;
                FileCountTextBlock.Text  =
                    ((int)myFolder.Folder.ChildCount).ToString("N0");
                FolderCreatedTextBlock.Text =
                    myFolder.CreatedDateTime.GetValueOrDefault().ToString("d");
                FolderLastModifiedTextBlock.Text =
                    myFolder.LastModifiedDateTime.GetValueOrDefault().ToString("d");
                FolderSharedTextBlock.Text        = (myFolder.Shared != null) ? "Yes" : "No";
                FolderHyperlinkButton.NavigateUri = new Uri(myFolder.WebUrl);
            }
        }
Exemple #3
0
        private async void SearchFilesButton_Click(Object sender, RoutedEventArgs e)
        {
            ShowFiles();

            try
            {
                if (FoldersListView.SelectedItem != null)
                {
                    selectedFolder = ((Models.Folder)FoldersListView.SelectedItem);

                    searchedItems = await graphClient.Me.Drive.Items[selectedFolder.Id]
                                    .Search("Direct Deposit")
                                    .Request().GetAsync();
                }

                MyFiles = new ObservableCollection <Models.File>();

                foreach (var file in searchedItems)
                {
                    MyFiles.Add(new Models.File
                    {
                        Id   = file.Id,
                        Name = file.Name,
                        Size = Convert.ToInt64(file.Size),
                        Url  = file.WebUrl
                    });
                }

                DriveItemCountTextBlock.Text = $"You have {MyFiles.Count()} files";
                FilesListView.ItemsSource    = MyFiles;
            }
            catch (ServiceException ex)
            {
                DriveItemCountTextBlock.Text = $"We could not get files: {ex.Error.Message}";
            }
        }