所以即时比较数字与此代码 Dim curDGV1Cri1 As Double = dgv1(DGV1Cri1,e.RowIndex).Value Dim curDGV1Cri2 As Double = dgv1(DGV1Cri2,e.RowIndex).Value Dim curDGV1Cri3 As Double = dgv1(DGV1Cri3,e.RowIndex).Value Dim curDGV1Cri4 As Double = dgv1(DGV1Cri4,e.RowIndex).Value Dim curDGV1Cri5 As Double = dgv1(DGV1Cri5,e.RowIndex).Value Dim InputString1 As String = DataGridView1.Columns(DGV1Cri1)。HeaderText Dim Result1 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString1,\ d +) Dim InputString2 As String = DataGridView1.Columns(DGV1Cri2)。HeaderText Dim Result2 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions .Regex.Match(InputString2,\ d +) Dim InputString3 As String = DataGridView1.Columns(DGV1Cri3)。HeaderText Dim Result3 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString3,\d +) Dim InputString4 As String = DataGridView1.Columns(DGV1Cri4)。HeaderText Dim Result4 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match (InputString4,\ d +) Dim InputString5 As String = DataGridView1.Columns(DGV1Cri5)。HeaderText Dim Result5 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString5,\ d +) Dim InputString6 As String = lblJudge.Text Dim Result6 As System.Text。 RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString6,\ d +) 如果curDGV1Cri1> Result1.Value然后 dgv1(DGV1Cri1,e.RowIndex).Value =0 MessageBox.Show(你的输入超出范围。, Error,MessageBoxButtons.OK,MessageBoxIcon.Error) ElseIf curDGV1Cri2> Convert.ToInt32(Result2.Value)然后 dgv1(DGV1Cri2,e.RowIndex).Value =0 MessageBox.Show(你的输入已经输出范围。,错误,MessageBoxButtons.OK,MessageBoxIcon.Error) ElseIf curDGV1Cri3> Convert.ToInt32(Result3.Value)然后 dgv1(DGV1Cri3,e.RowIndex).Value =0 MessageBox.Show(你的输入已经输出范围。,错误,MessageBoxButtons.OK,MessageBoxIcon.Error) ElseIf curDGV1Cri4> Convert.ToInt32(Result4.Value)然后 dgv1(DGV1Cri4,e.RowIndex).Value =0 MessageBox.Show(你的输入已经输出范围。,错误,MessageBoxButtons.OK,MessageBoxIcon.Error) ElseIf curDGV1Cri5> Convert.ToInt32(Result5.Value)然后 dgv1(DGV1Cri5,e.RowIndex).Value =0 MessageBox.Show(你的输入已经输出范围。,错误,MessageBoxButtons.OK,MessageBoxIcon.Error) 例如,如果Result1等于30,即使它仍然给我错误我在datagridview单元格上输入一个4-9的数字。
so im comparing numbers with this code Dim curDGV1Cri1 As Double = dgv1("DGV1Cri1", e.RowIndex).Value Dim curDGV1Cri2 As Double = dgv1("DGV1Cri2", e.RowIndex).Value Dim curDGV1Cri3 As Double = dgv1("DGV1Cri3", e.RowIndex).Value Dim curDGV1Cri4 As Double = dgv1("DGV1Cri4", e.RowIndex).Value Dim curDGV1Cri5 As Double = dgv1("DGV1Cri5", e.RowIndex).Value Dim InputString1 As String = DataGridView1.Columns("DGV1Cri1").HeaderText Dim Result1 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString1, "\d+") Dim InputString2 As String = DataGridView1.Columns("DGV1Cri2").HeaderText Dim Result2 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString2, "\d+") Dim InputString3 As String = DataGridView1.Columns("DGV1Cri3").HeaderText Dim Result3 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString3, "\d+") Dim InputString4 As String = DataGridView1.Columns("DGV1Cri4").HeaderText Dim Result4 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString4, "\d+") Dim InputString5 As String = DataGridView1.Columns("DGV1Cri5").HeaderText Dim Result5 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString5, "\d+") Dim InputString6 As String = lblJudge.Text Dim Result6 As System.Text.RegularExpressions.Match = System.Text.RegularExpressions.Regex.Match(InputString6, "\d+") If curDGV1Cri1 > Result1.Value Then dgv1("DGV1Cri1", e.RowIndex).Value = "0" MessageBox.Show("Your input is out of range.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error) ElseIf curDGV1Cri2 > Convert.ToInt32(Result2.Value) Then dgv1("DGV1Cri2", e.RowIndex).Value = "0" MessageBox.Show("Your input is out of range.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error) ElseIf curDGV1Cri3 > Convert.ToInt32(Result3.Value) Then dgv1("DGV1Cri3", e.RowIndex).Value = "0" MessageBox.Show("Your input is out of range.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error) ElseIf curDGV1Cri4 > Convert.ToInt32(Result4.Value) Then dgv1("DGV1Cri4", e.RowIndex).Value = "0" MessageBox.Show("Your input is out of range.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error) ElseIf curDGV1Cri5 > Convert.ToInt32(Result5.Value) Then dgv1("DGV1Cri5", e.RowIndex).Value = "0" MessageBox.Show("Your input is out of range.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error) for example if the Result1 is equal to 30, its still giving me error even if i input on datagridview cell a number from 4-9.
推荐答案不要做那样的事情!你正在比较字符串,而不是数字! 所以10小于1,依此类推。将它们转换为数字,它应该可以工作。 Don''t do things like that! You are comparing strings, not numbers! So "10" is less than "1", and so forth. Convert them to numbers, and it should work. If Convert.ToInt32(curDGV2Cri1) > Convert.ToInt32(Result1.Value) Then
更多推荐
比较提取字符串中的数字
发布评论