2012-03-24 4 views
0

그래서 나는 다른 문자열을 가지고 텍스트를 가지고있는 콤보 박스를 사용하려고 노력하고있다. 과 같이 :어떻게하면 여러 개의 문자열과 텍스트가있는 문자열을 콤보 박스에서 사용합니까? vb.net

Dim numbers() As String = {one, two, three, "four", "five"} 
ComboBox1.text = numbers 

나는 모든 것을 거기에 있어야 할 수 있도록 한 번 이상 숫자가 더 사용하는 것을 시도하고있다. 사용해 보았습니다 :

Dim numbers As String = (one or two or three or "four" or "five") 

그러나 작동하지 않았습니다. 이것을 가능하게 할 방법이 있습니까? 인터넷을 통해 도움을 청했는데 배열 목록과 문자열 변환이있었습니다. 모든 것을 가진 한 줄의 코드를 만들려고합니다.

편집 : 다시 말해 보겠습니다. 나는이 작업을 수행하기 위해 노력하고있어 :

Dim numbers As String = (one or two or three or "four" or "five") 
ComboBox1.items.add(numbers) 
If Combobox1.text = numbers Then 
TextBox1.text = "is showing" 
End if 

답변

1

첫 번째 구문을 사용하는 배열을 만드는 경우. 최종 결과로 원하는 것이 무엇인지 혼란 스럽지만, 단지 String과 Text에 참여하고 싶다면 VB Concatenation 오퍼레이터 중 하나 인 &을 사용할 수 있습니다.

Dim numbers As String = one & two & three & "four" & "five" 

자세한 설명을 위해 기본을 편집하십시오. DataBinding과 같은 것을 원하고있는 것 같습니다. 이 코드가 효과가 있는지보십시오.

Dim numbers() As String = {one, two, three, "four", "Five"} 
ComboBox1.DataSource = numbers 

당신은 당신의 문자열이 방법

numbers = one & "," & two & "," & three & "," & "Four" & "," & "Five" 

또는 LarsTech 제안처럼

Dim temp() As String = {one, two, three, "Four", "Five"} 
numbers = String.Join(",", temp) 

이 콤보 상자 채우기 이런 식으로 만들 수있는이 같은 것을보십시오. 다른 사람들처럼이

Private Sub ComboBox1_TextChanged(sender As Object, e As System.EventArgs) Handles  ComboBox1.TextChanged 
    If numbers.Contains(ComboBox1.Text) Then 
     TextBox1.Text = "is showing" 
    End If 
End Sub 
+0

정확히 내가 추가하려고하는 것 외에는 그들을 분할하고 싶습니다. –

+0

@MarkChai 무엇부터 시작했으며 최종 결과는 무엇입니까? 콤보 박스의 개별 레코드로 분할하고 싶습니까? –

+0

좋아요, 그래서 콤보 박스 항목 목록에 숫자를 추가하려고합니다.항목을 선택하면 단추를 클릭 할 때 "하나"가 선택되고 텍스트 상자에서 "선택한 항목"을 보려면 숫자를 다시 사용하고 싶습니다. –

0

이 같은이 당신이 원하는 ..

시도 뭔가 ..

public sub bla(byval x as string(), byref cb as combobox) 
    cb.items.clear 
    for each v as string in x 
    cb.items.add(v) 
    next v 
end sub 

' call 
Dim numbers() As String = {"one", "two", "three", "four", "five"} 
bla(combobox1, numbers) 
1

같은 경기

ComboBox1.Items.AddRange(numbers.Split(",", 5, StringSplitOptions.RemoveEmptyEntries)) 

그리고 확인, 문제는 어두운 조금이다

당신이 찾고 계십니까 :

ComboBox1.Items.AddRange(New String() {"one", "two", "three", "four", "five"}) 

그리고 콤보 상자의 SelectedIndexChanged 이벤트를 사용하십시오.

Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged 
    If ComboBox1.SelectedIndex = ListBox.NoMatches Then 
    TextBox1.Text = String.Empty 
    Else 
    TextBox1.Text = ComboBox1.SelectedItem & " is selected." 
    End If 
End Sub 
+0

그것은 다소 비슷하지만 필자가 필요로하는 것과 완전히 다르게 쓰여졌다. 다른 줄에 대해서도 1 문자열을 사용하려고합니다. 코드를 사용하려면 300 줄 이상의 코드를 다시 작성해야합니다. 도움을 주셔서 감사합니다, 나는 이걸 직접 알아 내려고 할 것입니다. –

관련 문제