2016-01-22 48 views
-1

嗨:)基本上我有一個Checked ListViewBox(我選擇「checked = true」屬性部分)。我需要能夠從listViewBox中檢查的項目/行中獲取數據,以計算文本框中的總價格。我有一個組合框,您可以在其中選擇要在ListViewBox中顯示的文件(因此lvwbox可以在3個不同的文件之間切換,但我可以使用簡單的If語句解決此問題 - 如果cboDate =「..... 「然後.....等所以這不是問題)如何從檢查ListViewBox中獲取數據vb.net

我會在這裏發佈我的表單截圖,所以它更有意義,但基本上,我需要編碼的東西,讓我選擇多個項目在ListViewBox,然後顯示根據這些選擇一個總價格(在盒子BTW每個項目都有不同的價格)

文件名是JuneEvent,JulyEvent和AugEvent而且每一個都有它們的ClassID,ClassDescripion幾個記錄字段,ClassTime和ClassPrice。

我一直被困在這個年齡有人可以幫助我!感謝大聲笑:P

PS 目前唯一的代碼,我的形式顯示在基於什麼是在組合框中選定的ListViewBox某個文件...

Click here to see the screenshot of program form

Here is the form in action - 忽略右邊的表格 - 我會處理的,後來

編輯:最新驗證碼:

Private Sub lvwEvents_ItemChecked(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckedEventArgs) Handles lvwEvents.ItemChecked 
     Dim totalAmt As Double = 0 
     For Each lv As ListViewItem In lvwEvents.Items 
      If lv.Checked = True Then 
       totalAmt += JuneEvent.ClassPrice 
      End If 
     Next 
     txtPrice.Text = FormatNumber(totalAmt, 2) 
End Sub 
+1

開始與ItemChecked事件工作,然後在檢查的項目使用CheckedItems收集循環,提取與列價格,總計到一個運行總數,顯示總數。在這些主題上添加一些搜索,你會很快「解除卡住」 – Steve

+0

看看這裏[問]和這裏[麥克]找出如何發佈我們需要的所有信息的問題。發佈程序的圖像通常不會很有幫助。包含足夠的代碼以便我們可以複製問題並幫助回答它會更好。 –

+0

我認爲問題出在_JuneEvent.ClassPrice_上。向我們展示如何啓動和分配值。 –

回答

0

由於您沒有發佈供我們學習的代碼,因此我只需在此添加將執行您所需操作的代碼。我希望你可以用它作爲參考。

 Private Sub ListView1_ItemChecked(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckedEventArgs) Handles ListView1.ItemChecked 
     Dim totalAmt As Double = 0 
     For Each lv As ListViewItem In ListView1.Items 
      If lv.Checked = True Then 
       totalAmt += Val(lv.Text) 
      End If 
     Next 
     lblLabelForYourTotalAmt.Text = FormatNumber(totalAmt,2) 
    End Sub 

我這裏假設ListView1.Items(0)。文本是要被總計的金額。

+0

謝謝,但它仍然沒有得到形式的價格:/:S,我試過你的方式和這種方式:Private Sub lvwEvents_ItemChecked(ByVal sender As Object,ByVal e As System.Windows.Forms.ItemCheckedEventArgs)Handle lvwEvents .ItemChecked 昏暗totalAmt作爲雙人= 0 對於每個LV如ListViewItem的在lvwEvents.Items 如果lv.Checked = TRUE,則 totalAmt + = JuneEvent.ClassPrice 結束如果 接着 txtPrice.Text = FormatNumber(totalAmt,2) End Sub - 但沒有東西放在總箱子(只有0。00) –

+0

請在您的問題中添加該代碼,以便我們可以更好地理解您在做什麼。 :)在評論中也很難閱讀。 –

+0

對不起,我不知道如何做到這一點(我是新來的)我已經將代碼添加到主要問題中,並且它仍然出現了相同的問題(所有這些都沒有新行等混亂 - 我該怎麼辦? ? –

0

我的朋友設法解決這個問題對我來說:這是最終的結果:

Private Sub lvwEvents_ItemChecked(ByVal sender As Object, ByVal e As System.Windows.Forms.ItemCheckedEventArgs) Handles lvwEvents.ItemChecked 
    Dim totalAmt As Double = 0 
    'check what items are checked in list view 
    For Each lv As ListViewItem In lvwEvents.Items 
     If lv.Checked = True Then 
      'add checked items value to total 
      totalAmt += Double.Parse(lv.SubItems(4).Text.Substring(1)) 
     End If 
    Next 
    'display total price 
    txtPrice.Text = FormatNumber(totalAmt, 2) 
End Sub