본문 바로가기
프로그래밍/C# (WinForms)

C#, WinForms ] OpenFileDialog, 이미지 pictureBox에 로드하기

by eteo 2023. 2. 22.

 

 

 

 

 

 

 

 

private void button1_Click(object sender, EventArgs e)
{
    OpenFileDialog dialog = new OpenFileDialog();
    dialog.Filter = "Image Files (*.bmp;*.jpg;*.jpeg;*.png)|*.BMP;*.JPG;*.JPEG,*.PNG";
    dialog.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
    if(dialog.ShowDialog() == DialogResult.OK)
    {
        textBox1.Text = dialog.FileName;
        pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
        pictureBox1.Image = Image.FromFile(dialog.FileName);
    }
}

 

 

 

 

 

OpenFileDialog 클래스를 사용하면 우리에게 익숙한 아래 dialog를 띄우고, 응용프로그램에서 파일을 찾아보고 선택할 수 있다.

 

 

 

 

Filter 문자열에는 필터에 대한 설명과 세로 막대(|) 그리고 필터패턴이 나온다. 세로 막대(|) 넣고 이어서 필터 설명과 필터 패턴을 계속 추가할 수 있다.

openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";

 

 

InitialDirectory 속성을 통해 dialog가 처음 나타날 때 표시할 디렉터리를 설정할 수 있다.

openFileDialog1.InitialDirectory = @"C:\";

 

 

 

 

 

ShowDialog() 를 하고 dialog의 반환값이 DialogResult.OK 일 때 textBox에 사용자가 선택한 FileName(경로포함)을 표시하고 PictureBox에 이미지를 로드한다.

 

 

 

 

 

 

OpenFileDialog 참고글 :

https://www.c-sharpcorner.com/UploadFile/mahesh/openfiledialog-in-C-Sharp/

 

OpenFileDialog In C#

C# OpenFileDialog control is used to browse and select a file on a computer. In this article, you'll learn how to use the OpenFileDialog in C#.

www.c-sharpcorner.com

https://learn.microsoft.com/ko-kr/dotnet/api/system.windows.forms.filedialog.filter?view=windowsdesktop-7.0 

 

FileDialog.Filter 속성 (System.Windows.Forms)

대화 상자에서 "파일 형식으로 저장" 또는 "파일 형식" 상자에 표시되는 선택 옵션을 결정하는 현재 파일 이름 필터 문자열을 가져오거나 설정합니다.

learn.microsoft.com