从值数组创建标签?

时间:2012-04-20 00:55:56

标签: c# winforms label

我正在制作股票市场游戏,我想显示一个int数组作为标签。

我不想手动将它放入永久标签中。有没有办法做到这一点。我在C#中使用Visual Studio编程。

1 个答案:

答案 0 :(得分:3)

在表单上有一个TableLayoutPanel,这样您就可以添加控件来添加并让它们自动对齐和定位。

然后,根据您的整体列表重新填充标签:

tableLayoutPanel.Controls.Clear();

foreach (var i in ints)
{
    tableLayoutPanel.Controls.Add(new Label {Text = i.ToString()});
}

如果您想要的是一个获取整数数组并返回标签数组的方法,那么:

private Label[] GetLabels(int[] ints)
{
    return ints == null ? null : ints.Select(i => new Label {Text = i.ToString()}).ToArray();
}

或者没有linq:

private Label[] GetLabels(int[] ints)
{
    if (ints == null)
    {
        return null;
    }

    var labels = new Label[ints.Length];

    for (var i = 0; i < ints.Length; i++)
    {
        labels[i] = new Label {Text = i.ToString()};
    }

    return labels;
}