PictureBox.SizeMode 속성
이미지가 표시되는 방식을 나타냅니다.
네임스페이스: System.Windows.Forms
어셈블리: System.Windows.Forms(system.windows.forms.dll)
구문
‘선언
<LocalizableAttribute(True)> _
Public Property SizeMode As PictureBoxSizeMode
‘사용 방법
Dim instance As PictureBox
Dim value As PictureBoxSizeMode
value = instance.SizeMode
instance.SizeMode = value
[LocalizableAttribute(true)]
public PictureBoxSizeMode SizeMode { get; set; }
[LocalizableAttribute(true)]
public:
property PictureBoxSizeMode SizeMode {
PictureBoxSizeMode get ();
void set (PictureBoxSizeMode value);
}
/** @property */
public PictureBoxSizeMode get_SizeMode ()
/** @property */
public void set_SizeMode (PictureBoxSizeMode value)
public function get SizeMode () : PictureBoxSizeMode
public function set SizeMode (value : PictureBoxSizeMode)
속성 값
PictureBoxSizeMode 값 중 하나입니다. 기본값은 Normal입니다.
예외
예외 형식 | 조건 |
---|---|
할당된 값이 PictureBoxSizeMode 값 중 하나가 아닌 경우 |
설명
이 속성에 사용할 수 있는 값은 PictureBoxSizeMode 열거형에서 가져옵니다. 기본적으로 Normal 모드에서 Image는 PictureBox의 왼쪽 위 모퉁이에 놓이고 PictureBox에 비해 너무 큰 이미지 부분은 클리핑됩니다. StretchImage 값을 사용하면 이미지가 PictureBox에 맞게 늘어납니다.
AutoSize 값을 사용하면 항상 이미지에 맞게 컨트롤 크기가 조정됩니다. 또한 CenterImage 값을 사용하면 이미지가 클라이언트 영역 가운데에 놓이게 됩니다.
예제
다음 코드 예제에서는 PictureBox 및 ListView 컨트롤을 사용하는 방법을 보여 줍니다. PictureBox는 BorderStyle 및 PictureBoxSizeMode 열거형을 사용하여 BorderStyle 및 SizeMode 속성을 각각 설정하는 방법으로 초기화됩니다. ListView는 Sample Pictures 디렉터리의 그림으로 채워집니다. ListView.GetItemAt 메서드는 항목이 선택되었는지 여부를 판단하기 위해 ListView 컨트롤의 MouseDown 이벤트를 처리할 때 사용됩니다. 항목이 선택되어 있으면 이벤트 처리기에서는 Image 속성을 설정하여 선택된 파일을 표시합니다. 다음 예제에서는 C:\Documents and Settings\All Users\Documents\My Pictures\Sample Pictures 디렉터리에 JPG 파일이 있다고 가정합니다. 이 예제를 실행하려면 폼에 다음 코드를 붙여넣고 폼의 생성자나 Load 이벤트 처리 메서드에서 InitializePictureBox
및 PopulateListView
메서드를 호출합니다. 모든 이벤트가 해당 이벤트 처리 메서드와 연결되도록 합니다.
Private Sub PopulateListView()
ListView1.Width = 270
ListView1.Location = New System.Drawing.Point(10, 10)
' Declare and construct the ColumnHeader objects.
Dim header1, header2 As ColumnHeader
header1 = New ColumnHeader
header2 = New ColumnHeader
' Set the text, alignment and width for each column header.
header1.Text = "File name"
header1.TextAlign = HorizontalAlignment.Left
header1.Width = 70
header2.TextAlign = HorizontalAlignment.Left
header2.Text = "Location"
header2.Width = 200
' Add the headers to the ListView control.
ListView1.Columns.Add(header1)
ListView1.Columns.Add(header2)
' Populate the ListView.Items property.
' Set the directory to the sample picture directory.
Dim dirInfo As New System.IO.DirectoryInfo _
("C:\Documents and Settings\All Users" _
& "\Documents\My Pictures\Sample Pictures")
Dim file As System.IO.FileInfo
' Get the .jpg files from the directory
Dim files() As System.io.FileInfo = dirInfo.GetFiles("*.jpg")
' Add each file name and full name including path
' to the ListView.
If Not (files Is Nothing) Then
For Each file In files
Dim item As New ListViewItem(file.Name)
item.SubItems.Add(file.FullName)
ListView1.Items.Add(item)
Next
End If
End Sub
Private Sub InitializePictureBox()
PictureBox1 = New PictureBox
' Set the location and size of the PictureBox control.
Me.PictureBox1.Location = New System.Drawing.Point(70, 120)
Me.PictureBox1.Size = New System.Drawing.Size(140, 140)
Me.PictureBox1.TabStop = False
' Set the SizeMode property to the StretchImage value. This
' will shrink or enlarge the image as needed to fit into
' the PictureBox.
Me.PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage
' Set the border style to a three-dimensional border.
Me.PictureBox1.BorderStyle = BorderStyle.Fixed3D
' Add the PictureBox to the form.
Me.Controls.Add(Me.PictureBox1)
End Sub
Private Sub ListView1_MouseDown(ByVal sender As Object, _
ByVal e As MouseEventArgs) Handles ListView1.MouseDown
Dim selection As ListViewItem = ListView1.GetItemAt(e.X, e.Y)
' If the user selects an item in the ListView, display
' the image in the PictureBox.
If Not (selection Is Nothing) Then
PictureBox1.Image = System.Drawing.Image.FromFile _
(selection.SubItems(1).Text)
End If
End Sub
private void PopulateListView()
{
ListView1.Width = 270;
ListView1.Location = new System.Drawing.Point(10, 10);
// Declare and construct the ColumnHeader objects.
ColumnHeader header1, header2;
header1 = new ColumnHeader();
header2 = new ColumnHeader();
// Set the text, alignment and width for each column header.
header1.Text = "File name";
header1.TextAlign = HorizontalAlignment.Left;
header1.Width = 70;
header2.TextAlign = HorizontalAlignment.Left;
header2.Text = "Location";
header2.Width = 200;
// Add the headers to the ListView control.
ListView1.Columns.Add(header1);
ListView1.Columns.Add(header2);
// Populate the ListView.Items property.
// Set the directory to the sample picture directory.
System.IO.DirectoryInfo dirInfo =
new System.IO.DirectoryInfo(
"C:\\Documents and Settings\\All Users" +
"\\Documents\\My Pictures\\Sample Pictures");
// Get the .jpg files from the directory
System.IO.FileInfo[] files = dirInfo.GetFiles("*.jpg");
// Add each file name and full name including path
// to the ListView.
if (files != null)
{
foreach ( System.IO.FileInfo file in files )
{
ListViewItem item = new ListViewItem(file.Name);
item.SubItems.Add(file.FullName);
ListView1.Items.Add(item);
}
}
}
private void InitializePictureBox()
{
PictureBox1 = new PictureBox();
// Set the location and size of the PictureBox control.
this.PictureBox1.Location = new System.Drawing.Point(70, 120);
this.PictureBox1.Size = new System.Drawing.Size(140, 140);
this.PictureBox1.TabStop = false;
// Set the SizeMode property to the StretchImage value. This
// will shrink or enlarge the image as needed to fit into
// the PictureBox.
this.PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
// Set the border style to a three-dimensional border.
this.PictureBox1.BorderStyle = BorderStyle.Fixed3D;
// Add the PictureBox to the form.
this.Controls.Add(this.PictureBox1);
}
private void ListView1_MouseDown(object sender, MouseEventArgs e)
{
ListViewItem selection = ListView1.GetItemAt(e.X, e.Y);
// If the user selects an item in the ListView, display
// the image in the PictureBox.
if (selection != null)
{
PictureBox1.Image = System.Drawing.Image.FromFile(
selection.SubItems[1].Text);
}
}
private:
void PopulateListView()
{
ListView1->Width = 270;
ListView1->Location = System::Drawing::Point( 10, 10 );
// Declare and construct the ColumnHeader objects.
ColumnHeader^ header1;
ColumnHeader^ header2;
header1 = gcnew ColumnHeader;
header2 = gcnew ColumnHeader;
// Set the text, alignment and width for each column header.
header1->Text = "File name";
header1->TextAlign = HorizontalAlignment::Left;
header1->Width = 70;
header2->TextAlign = HorizontalAlignment::Left;
header2->Text = "Location";
header2->Width = 200;
// Add the headers to the ListView control.
ListView1->Columns->Add( header1 );
ListView1->Columns->Add( header2 );
// Populate the ListView.Items property.
// Set the directory to the sample picture directory.
System::IO::DirectoryInfo^ dirInfo = gcnew System::IO::DirectoryInfo( "C:\\Documents and Settings\\All Users"
"\\Documents\\My Pictures\\Sample Pictures" );
// Get the .jpg files from the directory
array<System::IO::FileInfo^>^files = dirInfo->GetFiles( "*.jpg" );
// Add each file name and full name including path
// to the ListView.
if ( files != nullptr )
{
System::Collections::IEnumerator^ myEnum = files->GetEnumerator();
while ( myEnum->MoveNext() )
{
System::IO::FileInfo^ file = safe_cast<System::IO::FileInfo^>(myEnum->Current);
ListViewItem^ item = gcnew ListViewItem( file->Name );
item->SubItems->Add( file->FullName );
ListView1->Items->Add( item );
}
}
}
void InitializePictureBox()
{
PictureBox1 = gcnew PictureBox;
// Set the location and size of the PictureBox control.
this->PictureBox1->Location = System::Drawing::Point( 70, 120 );
this->PictureBox1->Size = System::Drawing::Size( 140, 140 );
this->PictureBox1->TabStop = false;
// Set the SizeMode property to the StretchImage value. This
// will shrink or enlarge the image as needed to fit into
// the PictureBox.
this->PictureBox1->SizeMode = PictureBoxSizeMode::StretchImage;
// Set the border style to a three-dimensional border.
this->PictureBox1->BorderStyle = BorderStyle::Fixed3D;
// Add the PictureBox to the form.
this->Controls->Add( this->PictureBox1 );
}
void ListView1_MouseDown( Object^ /*sender*/, MouseEventArgs^ e )
{
ListViewItem^ selection = ListView1->GetItemAt( e->X, e->Y );
// If the user selects an item in the ListView, display
// the image in the PictureBox.
if ( selection != nullptr )
{
PictureBox1->Image = System::Drawing::Image::FromFile( selection->SubItems[ 1 ]->Text );
}
}
private void PopulateListView()
{
listView1.set_Width(270);
listView1.set_Location(new System.Drawing.Point(10, 10));
// Declare and construct the ColumnHeader objects.
ColumnHeader header1, header2;
header1 = new ColumnHeader();
header2 = new ColumnHeader();
// Set the text, alignment and width for each column header.
header1.set_Text("File name");
header1.set_TextAlign(HorizontalAlignment.Left);
header1.set_Width(70);
header2.set_TextAlign(HorizontalAlignment.Left);
header2.set_Text("Location");
header2.set_Width(200);
// Add the headers to the ListView control.
listView1.get_Columns().Add(header1);
listView1.get_Columns().Add(header2);
// Populate the ListView.Items property.
// Set the directory to the sample picture directory.
System.IO.DirectoryInfo dirInfo =
new System.IO.DirectoryInfo("C:\\Documents and Settings\\All Users"
+ "\\Documents\\My Pictures\\Sample Pictures");
// Get the.jpg files from the directory
System.IO.FileInfo files[] = dirInfo.GetFiles("*.jpg");
// Add each file name and full name including path
// to the ListView.
if (files != null) {
for (int iCtr = 0; iCtr < files.length; iCtr++) {
System.IO.FileInfo file = files[iCtr];
ListViewItem item = new ListViewItem(file.get_Name());
item.get_SubItems().Add(file.get_FullName());
listView1.get_Items().Add(item);
}
}
} //PopulateListView
private void InitializePictureBox()
{
pictureBox1 = new PictureBox();
// Set the location and size of the PictureBox control.
this.pictureBox1.set_Location(new System.Drawing.Point(70, 120));
this.pictureBox1.set_Size(new System.Drawing.Size(140, 140));
this.pictureBox1.set_TabStop(false);
// Set the SizeMode property to the StretchImage value. This
// will shrink or enlarge the image as needed to fit into
// the PictureBox.
this.pictureBox1.set_SizeMode(PictureBoxSizeMode.StretchImage);
// Set the border style to a three-dimensional border.
this.pictureBox1.set_BorderStyle(BorderStyle.Fixed3D);
// Add the PictureBox to the form.
this.get_Controls().Add(this.pictureBox1);
} //InitializePictureBox
private void listView1_MouseDown(Object sender, MouseEventArgs e)
{
ListViewItem selection = listView1.GetItemAt(e.get_X(), e.get_Y());
// If the user selects an item in the ListView, display
// the image in the PictureBox.
if (selection != null) {
pictureBox1.set_Image(System.Drawing.Image.FromFile(
selection.get_SubItems().get_Item(1).get_Text()));
}
} //listView1_MouseDown
플랫폼
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.
버전 정보
.NET Framework
2.0, 1.1, 1.0에서 지원
.NET Compact Framework
2.0, 1.0에서 지원
참고 항목
참조
PictureBox 클래스
PictureBox 멤버
System.Windows.Forms 네임스페이스
PictureBox.Image 속성
PictureBoxSizeMode