图表元素 - 要点:如何使用循环创建点

时间:2013-12-30 22:02:46

标签: vb.net winforms loops

如何在VB.Net中为此创建for循环? (如下所示)

下面的代码将值添加到我的图表中,并由存储在Windows窗体上的标签填充。

With .Points
    .AddXY(0, 0)
    .AddXY(1, LblWkEff1.Text)
    .AddXY(2, LblWkEff2.Text)
    .AddXY(3, LblWkEff3.Text)
    .AddXY(4, LblWkEff4.Text)
    .AddXY(5, LblWkEff5.Text)
    .AddXY(6, LblWkEff6.Text)
    .AddXY(7, LblWkEff7.Text)
    .AddXY(8, LblWkEff8.Text)
    .AddXY(9, LblWkEff9.Text)
    .AddXY(10, LblWkEff10.Text)
End With

2 个答案:

答案 0 :(得分:1)

像这样:(假设控件直接添加到表单中)

With .Points
    .AddXY(0, 0)
    For i As Integer = 1 to 10
        .AddXY(i, Me.Controls.Item(String.Format("LblWkEff{0}", i)).Text)
    Next
End With

我建议您解析Y轴:

.AddXY(i, Integer.Parse(Me.Controls.Item(String.Format("LblWkEff{0}", i)).Text))

答案 1 :(得分:1)

我假设您正在使用WinForms。表单有一个Controls集合,其中有一个重载的Item索引器(默认属性)接受Integer索引或控件名称为String

With .Points
    .AddXY(0, 0)
    For i As Integer = 1 To 10
        .AddXY(i, Controls.Item("LblWkEff" & i).Text)
    Next
End With

如果您有Option Strict On,则会生成较少错误的代码。如果有,则需要明确执行缩小转化。

.AddXY(i, CInt(Controls.Item("LblWkEff" & i).Text)) 'Use CInt for the conversion

另一方面,Integer在字符串连接中使用时会自动转换为String