ListBox.ObjectCollection.AddRange 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
ListBox의 항목 목록에 항목 그룹을 추가합니다.
오버로드
AddRange(Object[]) |
ListBox의 항목 목록에 항목 배열을 추가합니다. |
AddRange(ListBox+ObjectCollection) |
ListBox.ObjectCollection의 항목 목록에 기존 ListBox 항목을 추가합니다. |
AddRange(Object[])
ListBox의 항목 목록에 항목 배열을 추가합니다.
public:
void AddRange(cli::array <System::Object ^> ^ items);
public:
void AddRange(... cli::array <System::Object ^> ^ items);
public void AddRange (object[] items);
public void AddRange (params object[] items);
member this.AddRange : obj[] -> unit
Public Sub AddRange (items As Object())
Public Sub AddRange (ParamArray items As Object())
매개 변수
- items
- Object[]
목록에 추가할 개체 배열입니다.
예외
.NET 5 이상: items
는 입니다 null
.
예제
다음 코드 예제에서는 값을 속성을 OwnerDrawVariable
설정 DrawMode 하 고 처리 하 여 소유자 그리기 ListBox 및 이벤트를 보여 DrawItemMeasureItem 줍니다. 또한 및 ScrollAlwaysVisible 속성을 설정하고 메서드를 BorderStyle 사용하는 방법을 AddRange 보여 줍니다.
이 예제를 실행하려면 네임스페이스와 네임스페이스를 System.Drawing 가져오는 빈 양식에 System.Windows.Forms 붙여넣습니다. 호출 InitializeOwnerDrawnListBox
폼의 생성자에서 또는 Load
메서드.
internal:
System::Windows::Forms::ListBox^ ListBox1;
private:
void InitializeOwnerDrawnListBox()
{
this->ListBox1 = gcnew System::Windows::Forms::ListBox;
// Set the location and size.
ListBox1->Location = Point(20,20);
ListBox1->Size = System::Drawing::Size( 240, 240 );
// Populate the ListBox.ObjectCollection property
// with several strings, using the AddRange method.
array<Object^>^temp0 = {"System.Windows.Forms","System.Drawing","System.Xml","System.Net","System.Runtime.Remoting","System.Web"};
this->ListBox1->Items->AddRange( temp0 );
// Turn off the scrollbar.
ListBox1->ScrollAlwaysVisible = false;
// Set the border style to a single, flat border.
ListBox1->BorderStyle = BorderStyle::FixedSingle;
// Set the DrawMode property to the OwnerDrawVariable value.
// This means the MeasureItem and DrawItem events must be
// handled.
ListBox1->DrawMode = DrawMode::OwnerDrawVariable;
ListBox1->MeasureItem += gcnew MeasureItemEventHandler( this, &Form1::ListBox1_MeasureItem );
ListBox1->DrawItem += gcnew DrawItemEventHandler( this, &Form1::ListBox1_DrawItem );
this->Controls->Add( this->ListBox1 );
}
// Handle the DrawItem event for an owner-drawn ListBox.
void ListBox1_DrawItem( Object^ /*sender*/, DrawItemEventArgs^ e )
{
// If the item is the selected item, then draw the rectangle
// filled in blue. The item is selected when a bitwise And
// of the State property and the DrawItemState.Selected
// property is true.
if ( (e->State & DrawItemState::Selected) == DrawItemState::Selected )
{
e->Graphics->FillRectangle( Brushes::CornflowerBlue, e->Bounds );
}
else
{
// Otherwise, draw the rectangle filled in beige.
e->Graphics->FillRectangle( Brushes::Beige, e->Bounds );
}
// Draw a rectangle in blue around each item.
e->Graphics->DrawRectangle( Pens::Blue, e->Bounds );
// Draw the text in the item.
e->Graphics->DrawString( ListBox1->Items[ e->Index ]->ToString(), this->Font, Brushes::Black, (float)e->Bounds.X, (float)e->Bounds.Y );
// Draw the focus rectangle around the selected item.
e->DrawFocusRectangle();
}
// Handle the MeasureItem event for an owner-drawn ListBox.
void ListBox1_MeasureItem( Object^ sender, MeasureItemEventArgs^ e )
{
// Cast the sender object back to ListBox type.
ListBox^ theListBox = dynamic_cast<ListBox^>(sender);
// Get the string contained in each item.
String^ itemString = dynamic_cast<String^>(theListBox->Items[ e->Index ]);
// Split the string at the " . " character.
array<Char>^temp1 = {'.'};
array<String^>^resultStrings = itemString->Split( temp1 );
// If the string contains more than one period, increase the
// height by ten pixels; otherwise, increase the height by
// five pixels.
if ( resultStrings->Length > 2 )
{
e->ItemHeight += 10;
}
else
{
e->ItemHeight += 5;
}
}
internal System.Windows.Forms.ListBox ListBox1;
private void InitializeOwnerDrawnListBox()
{
this.ListBox1 = new System.Windows.Forms.ListBox();
// Set the location and size.
ListBox1.Location = new Point(20, 20);
ListBox1.Size = new Size(240, 240);
// Populate the ListBox.ObjectCollection property
// with several strings, using the AddRange method.
this.ListBox1.Items.AddRange(new object[]{"System.Windows.Forms",
"System.Drawing", "System.Xml", "System.Net", "System.Runtime.Remoting",
"System.Web"});
// Turn off the scrollbar.
ListBox1.ScrollAlwaysVisible = false;
// Set the border style to a single, flat border.
ListBox1.BorderStyle = BorderStyle.FixedSingle;
// Set the DrawMode property to the OwnerDrawVariable value.
// This means the MeasureItem and DrawItem events must be
// handled.
ListBox1.DrawMode = DrawMode.OwnerDrawVariable;
ListBox1.MeasureItem +=
new MeasureItemEventHandler(ListBox1_MeasureItem);
ListBox1.DrawItem += new DrawItemEventHandler(ListBox1_DrawItem);
this.Controls.Add(this.ListBox1);
}
// Handle the DrawItem event for an owner-drawn ListBox.
private void ListBox1_DrawItem(object sender, DrawItemEventArgs e)
{
// If the item is the selected item, then draw the rectangle
// filled in blue. The item is selected when a bitwise And
// of the State property and the DrawItemState.Selected
// property is true.
if ((e.State & DrawItemState.Selected) == DrawItemState.Selected)
{
e.Graphics.FillRectangle(Brushes.CornflowerBlue, e.Bounds);
}
else
{
// Otherwise, draw the rectangle filled in beige.
e.Graphics.FillRectangle(Brushes.Beige, e.Bounds);
}
// Draw a rectangle in blue around each item.
e.Graphics.DrawRectangle(Pens.Blue, e.Bounds);
// Draw the text in the item.
e.Graphics.DrawString(ListBox1.Items[e.Index].ToString(),
this.Font, Brushes.Black, e.Bounds.X, e.Bounds.Y);
// Draw the focus rectangle around the selected item.
e.DrawFocusRectangle();
}
// Handle the MeasureItem event for an owner-drawn ListBox.
private void ListBox1_MeasureItem(object sender,
MeasureItemEventArgs e)
{
// Cast the sender object back to ListBox type.
ListBox theListBox = (ListBox) sender;
// Get the string contained in each item.
string itemString = (string) theListBox.Items[e.Index];
// Split the string at the " . " character.
string[] resultStrings = itemString.Split('.');
// If the string contains more than one period, increase the
// height by ten pixels; otherwise, increase the height by
// five pixels.
if (resultStrings.Length>2)
{
e.ItemHeight += 10;
}
else
{
e.ItemHeight += 5;
}
}
Friend WithEvents ListBox1 As System.Windows.Forms.ListBox
Private Sub InitializeOwnerDrawnListBox()
Me.ListBox1 = New System.Windows.Forms.ListBox
' Set the location and size.
ListBox1.Location = New Point(20, 20)
ListBox1.Size = New Size(240, 240)
' Populate the ListBox.ObjectCollection property
' with several strings, using the AddRange method.
Me.ListBox1.Items.AddRange(New Object() _
{"System.Windows.Forms", "System.Drawing", "System.Xml", _
"System.Net", "System.Runtime.Remoting", "System.Web"})
' Turn off the scrollbar.
ListBox1.ScrollAlwaysVisible = False
' Set the border style to a single, flat border.
ListBox1.BorderStyle = BorderStyle.FixedSingle
' Set the DrawMode property to the OwnerDrawVariable value.
' This means the MeasureItem and DrawItem events must be
' handled.
ListBox1.DrawMode = DrawMode.OwnerDrawVariable
Me.Controls.Add(Me.ListBox1)
End Sub
' Handle the DrawItem event for an owner-drawn ListBox.
Private Sub ListBox1_DrawItem(ByVal sender As Object, _
ByVal e As DrawItemEventArgs) Handles ListBox1.DrawItem
' If the item is the selected item, then draw the rectangle filled in
' blue. The item is selected when a bitwise And of the State property
' and the DrawItemState.Selected property is true.
If (e.State And DrawItemState.Selected = DrawItemState.Selected) Then
e.Graphics.FillRectangle(Brushes.CornflowerBlue, e.Bounds)
Else
' Otherwise, draw the rectangle filled in beige.
e.Graphics.FillRectangle(Brushes.Beige, e.Bounds)
End If
' Draw a rectangle in blue around each item.
e.Graphics.DrawRectangle(Pens.Blue, e.Bounds)
' Draw the text in the item.
e.Graphics.DrawString(Me.ListBox1.Items(e.Index), Me.Font, _
Brushes.Black, e.Bounds.X, e.Bounds.Y)
' Draw the focus rectangle around the selected item.
e.DrawFocusRectangle()
End Sub
' Handle the MeasureItem event for an owner-drawn ListBox.
Private Sub ListBox1_MeasureItem(ByVal sender As Object, _
ByVal e As MeasureItemEventArgs) Handles ListBox1.MeasureItem
' Cast the sender object back to ListBox type.
Dim theListBox As ListBox = CType(sender, ListBox)
' Get the string contained in each item.
Dim itemString As String = CType(theListBox.Items(e.Index), String)
' Split the string at the " . " character.
Dim resultStrings() As String = itemString.Split(".")
' If the string contains more than one period, increase the
' height by ten pixels; otherwise, increase the height by
' five pixels.
If (resultStrings.Length > 2) Then
e.ItemHeight += 10
Else
e.ItemHeight += 5
End If
End Sub
설명
의 Sorted 속성을 ListBox 로 설정 true
하면 항목이 사전순으로 목록에 삽입됩니다. 그렇지 않으면 항목이 배열 내에서 발생하는 순서대로 삽입됩니다. 이 메서드는 일반적으로 개체 배열 String 을 전달하지만 모든 형식의 개체 배열을 이 메서드에 전달할 수 있습니다. 개체가 컬렉션 ListBox 에 추가되면 먼저 클래스의 ListControl 속성에 항목 텍스트를 가져올 때 참조하도록 지정된 개체의 멤버 이름이 있는지 DisplayMember 확인합니다. 속성에 DisplayMember 지정된 ListBox 멤버가 없는 경우 는 개체의 메서드를 호출 ToString 하여 목록에 표시할 텍스트를 가져옵니다. 이 메서드를 사용하여 에 항목을 ListBox추가하는 경우 및 EndUpdate 메서드를 호출 BeginUpdate 하여 성능을 최적화할 필요가 없습니다. 에 항목을 ListBox추가할 때 항목을 먼저 정렬한 다음 새 항목을 추가하는 것이 더 효율적입니다. 이 메서드를 사용하여 목록에 항목 그룹을 추가하거나 다른 ListBox에 저장된 항목을 다시 사용할 수 있습니다.
추가 정보
적용 대상
AddRange(ListBox+ObjectCollection)
ListBox.ObjectCollection의 항목 목록에 기존 ListBox 항목을 추가합니다.
public:
void AddRange(System::Windows::Forms::ListBox::ObjectCollection ^ value);
public void AddRange (System.Windows.Forms.ListBox.ObjectCollection value);
member this.AddRange : System.Windows.Forms.ListBox.ObjectCollection -> unit
Public Sub AddRange (value As ListBox.ObjectCollection)
매개 변수
- value
- ListBox.ObjectCollection
이 컬렉션으로 로드할 ListBox.ObjectCollection
예외
.NET 5 이상: value
는 입니다 null
.
설명
의 Sorted 속성을 ListBox 로 설정 true
하면 항목이 사전순으로 목록에 삽입됩니다. 그렇지 않으면 항목이 배열 내에서 발생하는 순서대로 삽입됩니다. 이 메서드는 일반적으로 개체 배열 String 을 전달하지만 모든 형식의 개체 배열을 이 메서드에 전달할 수 있습니다. 개체가 컬렉션 ListBox 에 추가되면 먼저 클래스의 ListControl 속성에 항목 텍스트를 가져올 때 참조하도록 지정된 개체의 멤버 이름이 있는지 DisplayMember 확인합니다. 속성에 DisplayMember 지정된 ListBox 멤버가 없는 경우 는 개체의 메서드를 호출 ToString 하여 목록에 표시할 텍스트를 가져옵니다.
이 메서드를 사용하여 에 항목을 ListBox추가하는 경우 및 EndUpdate 메서드를 호출 BeginUpdate 하여 성능을 최적화할 필요가 없습니다. 에 항목을 ListBox추가할 때 항목을 먼저 정렬한 다음 새 항목을 추가하는 것이 더 효율적입니다. 이 메서드를 사용하여 다른 ListBox에 저장된 항목을 다시 사용할 수 있습니다.
추가 정보
적용 대상
.NET