private async void PackageInfoButton_Click()

in AppInstallerFileBuilder/AppInstallerFileBuilder/Views/MainPackageView.xaml.cs [110:176]


        private async void PackageInfoButton_Click(object sender, RoutedEventArgs e)
        {
            FileOpenPicker openPicker = new FileOpenPicker();
            openPicker.ViewMode = PickerViewMode.Thumbnail;
            openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
            openPicker.FileTypeFilter.Add(".msix");
            openPicker.FileTypeFilter.Add(".msixbundle");
            openPicker.FileTypeFilter.Add(".appx");
            openPicker.FileTypeFilter.Add(".appxbundle");
            StorageFile file = await openPicker.PickSingleFileAsync();
            if (file != null && (file.FileType.Equals(".msix",StringComparison.OrdinalIgnoreCase) || file.FileType.Equals(".appx",StringComparison.OrdinalIgnoreCase)))
            {
                // Application now has read/write access to the picked file
                
                IRandomAccessStream randomAccessStream = await file.OpenReadAsync();
                AppxMetadata appPackage = new AppxMetadata(randomAccessStream);

                _filePathTextBox.Text = file.Path;
                _mainPackage.FilePath = file.Path;

                _nameTextBox.Text = appPackage.PackageName;
                _mainPackage.Name = appPackage.PackageName;

                _publisherTextBox.Text = appPackage.Publisher;
                _mainPackage.Publisher = appPackage.Publisher;

                _versionTextBox.Text = appPackage.Version.ToString();
                _mainPackage.Version = appPackage.Version.ToString();

                _resourceIdTextBox.Text = appPackage.ResourceId;
                _mainPackage.ResourceId = appPackage.ResourceId;

                _processorArchTextBox.Text = appPackage.Architecture;
                _mainPackage.ProcessorArchitecture = appPackage.Architecture;

                _uriPathTextBox.Text = file.Path;
                _mainPackage.FullUriPath = file.Path;

                _mainPackage.PackageType = PackageType.MSIX;

            }
            else if(file != null && (file.FileType.Equals(".msixbundle", StringComparison.OrdinalIgnoreCase) || file.FileType.Equals(".appxbundle", StringComparison.OrdinalIgnoreCase)))
            {
                IRandomAccessStream randomAccessStream = await file.OpenReadAsync();
                AppxBundleMetadata appBundle = new AppxBundleMetadata(randomAccessStream);

                _filePathTextBox.Text = file.Path;
                _mainPackage.FilePath = file.Path;

                _nameTextBox.Text = appBundle.PackageName;
                _mainPackage.Name = appBundle.PackageName;

                _publisherTextBox.Text = appBundle.Publisher;
                _mainPackage.Publisher = appBundle.Publisher;

                _versionTextBox.Text = appBundle.Version.ToString();
                _mainPackage.Version = appBundle.Version.ToString();

                _uriPathTextBox.Text = file.Path;
                _mainPackage.FullUriPath = file.Path;

                _mainPackage.PackageType = PackageType.MSIXBUNDLE;
            }

            _reloadViews();
            _save();
        }