Rock.Apps.StatementGenerator.OptionsPage.PopulateImageFile C# (CSharp) Méthode

PopulateImageFile() private méthode

Populates the image file.
private PopulateImageFile ( string imageFileName ) : void
imageFileName string Name of the image file.
Résultat void
        private void PopulateImageFile( string imageFileName )
        {
            string appPath = System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName;
            string appDirectory = Path.GetDirectoryName( appPath );

            txtLogoFile.Text = imageFileName;
            txtLogoFile.ToolTip = imageFileName;

            Uri imageFileUri;
            if ( string.IsNullOrWhiteSpace( Path.GetDirectoryName( imageFileName ) ) )
            {
                // no directory specified. It's in the App Directory
                imageFileUri = new Uri( Path.Combine( appDirectory, imageFileName ) );
            }
            else if ( Path.GetDirectoryName( imageFileName ).Equals( appDirectory, StringComparison.OrdinalIgnoreCase ) )
            {
                // directory is App Directory, just put the filename without the directory
                imageFileUri = new Uri( Path.GetFileName( imageFileName ) );
            }
            else
            {
                // directory is something besides the App Directory.  Fully qualify it
                imageFileUri = new Uri( imageFileName );
            }

            try
            {
                imgLogo.Source = new BitmapImage( imageFileUri );
                imgLogo.Visibility = Visibility.Visible;
                lblImageError.Visibility = Visibility.Collapsed;
            }
            catch ( Exception ex )
            {
                imgLogo.Visibility = Visibility.Collapsed;
                lblImageError.Visibility = Visibility.Visible;
                lblImageError.ToolTip = ex.Message;
                MessageBox.Show( "Unable to load image: \n\n" + ex.Message, "Image Error", MessageBoxButton.OK, MessageBoxImage.Error );
            }
        }