Add 메서드(Collection 개체)

업데이트: 2007년 11월

Collection 개체에 요소를 추가합니다.

Public Sub Add( _
   ByVal Item As Object, _
   Optional ByVal Key As String, _
   Optional ByVal { Before | After } As Object = Nothing _
)

매개 변수

  • Item
    필수적 요소. 컬렉션에 추가할 요소를 지정하는 형식의 개체입니다.

  • Key
    선택적 요소. 컬렉션의 새 요소에 액세스하는 데 위치 인덱스 대신 사용할 수 있는 키 문자열을 지정하는 고유 String 식입니다.

  • Before
    선택적 요소. 컬렉션에서 상대적 위치를 지정하는 식입니다. 추가되는 요소는 컬렉션에서 Before 인수에 의해 식별되는 요소 앞에 옵니다. Before 인수가 숫자 식이면 1부터 컬렉션의 Count 속성(Collection 개체) 값까지의 숫자여야 합니다. Before 인수가 String 식인 경우 이 인수는 참조되는 요소가 컬렉션에 추가될 때 지정된 키 문자열과 일치해야 합니다. Before와 After는 함께 지정할 수 없습니다.

  • After
    선택적 요소. 컬렉션에서 상대적 위치를 지정하는 식입니다. 추가되는 요소는 컬렉션에서 After 인수에 의해 식별되는 요소 뒤에 옵니다. After 인수가 숫자 식이면 1부터 컬렉션의 Count 속성 값까지의 숫자여야 합니다. After 인수가 String 식인 경우 이 인수는 참조되는 요소가 컬렉션에 추가될 때 지정된 키 문자열과 일치해야 합니다. Before와 After는 함께 지정할 수 없습니다.

예외/오류 코드

예외 형식

오류 번호

조건

ArgumentException

5

  • Before와 After가 함께 지정되었습니다.

  • Before 또는 After 인수가 컬렉션의 기존 요소를 참조하지 않습니다.

  • 지정한 Key가 이미 있습니다.

비구조적 오류 처리를 사용하는 Visual Basic 6.0 응용 프로그램을 업그레이드하는 경우에는 "오류 번호" 열을 참조하십시오. 오류 번호를 Number 속성(Err 개체)과 비교할 수 있습니다. 그러나 가능하면 이러한 오류 제어 방법을 Visual Basic의 구조적 예외 처리 개요에 설명된 방식으로 바꾸는 것이 좋습니다.

설명

Before 또는 After 인수는 컬렉션의 기존 요소를 참조해야 합니다. 그렇지 않으면 오류가 발생합니다.

또한 지정된 Key 값이 컬렉션의 기존 요소에 대한 키와 일치하는 경우에도 오류가 발생합니다.

예제

다음 예제에서는 Add 메서드를 사용하여 Public 속성 name이 포함된 child라는 클래스의 인스턴스인 child 개체를 family라는 컬렉션에 추가합니다. 다음 예제가 작동하는 방식을 확인하기 위해 두 개의 Button 컨트롤이 있는 Form을 만들고 해당 Text 속성을 Add와 List로 설정합니다. child 클래스 정의와 family 선언을 폼 코드에 추가합니다. Add와 List 단추에 대한 _Click 이벤트 처리기를 표시된 바와 같이 수정합니다. Add 단추를 사용하여 자식을 추가할 수 있으며, List 단추를 사용하여 모든 자식의 이름을 표시할 수 있습니다.

Public Class child
    Public name As String
    Sub New(ByVal newName As String)
        name = newName
    End Sub
End Class
' Create a Collection object.
Private family As New Collection()
Private Sub addChild_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button1.Click
    Dim newName As String
    newName = InputBox("Name of new family member: ")
    If newName <> "" Then
        family.Add(New child(newName), newName)
    End If
End Sub
Private Sub listChild_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button2.Click
    For Each aChild As child In family
        MsgBox(aChild.name)
    Next
End Sub

요구 사항

네임스페이스: Microsoft.VisualBasic

모듈: Collection

어셈블리: Visual Basic 런타임 라이브러리(Microsoft.VisualBasic.dll)

참고 항목

참조

Collection 개체(Visual Basic)

Item 속성(Collection 개체)

Remove 메서드(Collection 개체)