C#移动标签

时间:2015-10-12 18:18:04

标签: c# winforms sorting

所以我正在尝试为排序算法创建一个可视化器。 目前正试图通过简单的插入排序来使其工作。 该程序生成许多10 x(10 * ToSort [i])的标签,应在所述插入排序的每一步之后移动。

所以这个方法:

private void RefreshPanel()
    {
        for (int i = 0; i < toSort.Length; i++)
        {
            Label label = (Label)activePanel.Controls["lblVis" + toSort[i]];
            label.Top = ((10 * i) + i + 5);
        }
    }
在排序算法的每一步之后都会调用

。当标签确实被移动时,一些标签会在算法完成之前失去颜色。 在此尝试中,标签由“lblVis”和标签代表的数字标识。

另一次尝试:

private void RefreshPanel()
    {
        LogArray();
        for (int i = 0; i < toSort.Length; i++)
        {
            activePanel.Controls["lblVis" + i].Width = 10 * toSort[i];
        }
    }

在此示例中,标签再次由“lblVis”+创建时现有lblVis标签的数量标识。然后我尝试根据正在排序的数组中的值来改变它们的宽度。

然而,这些方法都不起作用。标签只是一个糟糕的Winform控件试图这样做吗?或者我错过了一些非常明显的东西?

0 个答案:

没有答案