2015-11-23 119 views
-1

我有一個列表視圖框被填充了五個項目。下面是我用來填充它的代碼我的代碼在這裏有問題,有人可以看看嗎?

末隨着

集RS =什麼

我試圖做的是讓用戶選擇多個項目,拼接的項目(有一個逗號)並將它們插入到表中。這裏是我嘗試獲取所選項目並連接它們的代碼(我構建了一個函數),但問題是,它需要其中一個項目,並將它連結三次(當在listview中選擇三個項目時)。我顯示標籤並保存ID,所以當listview被加載時,ID的順序是10,11,12,13,14。在我的最後一次嘗試中,我選擇了前三項,並將其轉換爲(13,13,13)。我如何解決它?我知道它

dim x As Integer 
Dim mystring As String 
For x = 1 To lvwExpenditures.ListItems.Count 
If lvwExpenditures.ListItems(x).Selected = True Then 
    If x = 1 Then 
    mystring = lvwExpenditures.SelectedItem.SubItems(1) 
    Else 
     mystring = mystring & "," & lvwExpenditures.SelectedItem.SubItems(1) 
    End If 
Else 

End If 
Next x 
+0

您使用的是循環相同的一個小問題:'lvwExpenditures.SelectedItem.SubItems(1)'你可能要像從IF:'lvwExpenditures.ListItems(X ).SubItems(1)' – Plutonix

+0

Working。我看到的問題有時候是,如果我選擇中間項目(比如11,12),我會在11之前看到一個逗號。所以當我查看服務器時,它看起來像這樣「,11,12」 – barry17

+0

任何人都知道如何與分離器一起工作。我從服務器拉回數據,試圖取出逗號,並顯示在列表視圖中選擇了哪些項目。代碼我看起來像這樣x = g_RS!Expenditures fields()= split(x,「,」)。這需要逗號但我不知道如何使列表視圖 – barry17

回答

0
dim x As Integer 
Dim mystring As String 
dim sep as string 
sep=", " 

For x = 1 To lvwExpenditures.ListItems.Count 
    If lvwExpenditures.ListItems(x).Selected Then 
     mystring = mystring & lvwExpenditures.ListItems(x).SubItems(1) & sep 
    End If 
Next x 

if mystring<>"" then 
    mystring=left(mystring,len(mystring)-len(sep) 
end if 
+0

謝謝,作品非常棒! – barry17

+0

@ barry17,你可能想接受我的回答,我會感激 – milevyo

相關問題