2013-02-27 2 views
1

Visual Basic 2010 (Visual Studio 2010에 포함되어 제공됨)을 사용하여 작은 응용 프로그램을 작성하고 있습니다.ListBox 및 Item Values ​​- Visual Basic 2010

Access 데이터베이스가 채워지도록 목록 상자를 설정했습니다. 데이터베이스에는 1) 변수 이름 2) 설명의 두 열이 있습니다. 예를 들어

여기 내 데이터의 샘플입니다, 내 질문에 사용되는 : 이제 가족 1

에서 온

변수 이름 설명 DOG1 개 생물 종, 나는 목록 상자를 그 설명 열에 의해 채워집니다. 이것이 내가 필요한 것입니다. 버튼을 클릭하고 클릭 한 항목에 따라 해당 "설명"을 텍스트 상자에 표시하고 싶습니다. 이것은 DisplayMember와 ValueMember를 믿는 것과 관련이 있습니다. 한 번에 하나의 항목에 대해이 작업을 수행하는 데 성공했습니다. 내 질문은 목록 상자에서 선택할 수있는 여러 항목에 대해 루프를 사용하여 동일한 작업을 수행하는 방법입니다.

다음은 한 번에 하나씩 클릭 한 항목을 표시하는 데 100 % 작동하는 코드입니다.

나는 다음과 같이 작동 할 것이라고 생각했지만 그렇지 않았고 왜 그렇게 확신 할 수 없었습니다.

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
Dim i As Integer 
     For i = 0 To ListBox1.SelectedValue - 1  
      TextBox1.Text = ListBox1.SelectedValue(i) 
     Next i 
End sub 

또한 가능한 경우 listbox1에서 선택한 항목을 가져 와서 다른 목록 상자에 값을 표시하고 싶습니다. 에 대한 너무 많은

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
     Dim i As Integer 
     For i = 0 To Listbox1.SelectedItems.Count - 1 
      Listbox2.Items.Add(Listbox1.SelectedItems.Item(i)) 
     Next i 

감사 : 나는 간단한 목록 상자 나 자신을 채워했지만, 지금은 가치와 디스플레이 회원들과 함께 일하고 있음을, 내가 코드를 적용 할 수없는 것와 함께하기 전에이 작업을 완료했습니다 사전에 도와주세요!

답변

0

난 당신이 필요하다고 생각 -

For i = 0 To ListBox1.SelectedValue - 1  
      TextBox1.Text &= ListBox1.SelectedValue(i) 
     Next i 

는 "&"을 참조하십시오.

아직 두 번 확인하지 않았습니다.

0

필요한 항목이어야합니다. 시도 해봐. Listbox의 SelectionMode 속성을 Multisimple로 변경하는 것을 잊지 마십시오.

TextBox1.Clear() 
Listbox2.Items.Clear() 
For x As Integer = 0 To ListBox1.SelectedItems.Count - 1 
    TextBox1.Text += ListBox1.SelectedItems(x).ToString + " " 
    ListBox2.Items.Add(ListBox1.SelectedItems(x).ToString) 
Next x 
0

Listbox2Listbox1에서보기이 시도 :

ListBox1.Items.Add("Dog, Cat, Fish, Bear, Bird, Goat") 

Dim myArr() As String = ListBox1.Items.OfType(Of String)().ToArray() 
ListBox2.DataSource = myArr 
관련 문제