我正在尝试通过收集值来计算基本的%值:
For Each M As Match In matchFound
lamdaFix2 = M.Groups(1).Value
lamdaFix3 = M.Groups(2).Value
Application.DoEvents()
Dim lv As ListViewItem = formMozCheck.listViewMoz.Items.Add(lamdaFix1)
lv.UseItemStyleForSubItems = False
lv.SubItems.Add(Math.Round(Double.Parse(lamdaFix2)).ToString())
lv.SubItems.Add(Math.Round(Double.Parse(lamdaFix3)).ToString())
lv.SubItems.Add("-")
lv.SubItems.Add("-")
lv.SubItems.Add(itm.SubItems(8).Text)
Dim srVal As Integer
If (itm.SubItems(9).Text = "") Then
srVal = 0
Else
srVal = CInt(itm.SubItems(9).Text)
End If
lv.SubItems.Add(srVal.ToString())
' work out a score
Dim overAllScore As Integer
' TODO: basic score
overAllScore = CInt(CInt(CDbl(Math.Round(Double.Parse(lamdaFix2)).ToString()) & CDbl(Math.Round(Double.Parse(lamdaFix3)).ToString()) & CDbl(itm.SubItems(8).Text) & Val(srVal)) * 100)
lv.SubItems.Add(CLng(overAllScore) & "%").ForeColor = Color.DarkGreen
itm.Checked = False
Next
这些值:
lv.SubItems.Add(Math.Round(Double.Parse(lamdaFix2)).ToString())
lv.SubItems.Add(Math.Round(Double.Parse(lamdaFix3)).ToString())
值介于0 - 100
之间这些:
itm.SubItems(8).Text
itm.SubItems(9).Text
值是否在1 - 10之间
我一直绞尽脑汁想看看添加这些值的最佳方法是什么,并给出一个基本的百分比,我的尝试:
overAllScore = CInt(CInt(CDbl(Math.Round(Double.Parse(lamdaFix2)).ToString()) & CDbl(Math.Round(Double.Parse(lamdaFix3)).ToString()) & CDbl(itm.SubItems(8).Text) & Val(srVal)) * 100)
只需添加234524等所有值,而不是23 + 45 + 2 + 4
的总值我可能过度复杂了这个大声笑
我将它标记为vb和c#,因为我虽然逻辑相同;)
感谢任何帮助人员!
格雷厄姆
答案 0 :(得分:0)
您应该使用“+”代替“&”:
overAllScore = CInt(CInt(CDbl(Math.Round(Double.Parse(lamdaFix2)).ToString()) + CDbl(Math.Round(Double.Parse(lamdaFix3)).ToString()) + CDbl(itm.SubItems(8).Text) + Val(srVal)) * 100)