0

我正在使用 Windows 应用程序。在那种形式中,我正在使用 DataRepeater 控件。我在该控件中显示数字。(与 2010 年相比)

我的代码

 DataTable dt = new DataTable();
                dt.Columns.Add("c1");
                dt.Rows.Add("1");
                dt.Rows.Add("2");
                dt.Rows.Add("3");
                dt.Rows.Add("4");
                dt.Rows.Add("5");
                dt.Rows.Add("6");
                dt.Rows.Add("7");
                dt.Rows.Add("8");
                dt.Rows.Add("9");
                dt.Rows.Add("10");
                textBox1.DataBindings.Add("Text", dt, "c1");
                dataRepeater1.DataSource = dt;

我改变了一个 Layoutstyle 是 Horizo​​ntal 那个时候它显示行中的所有数字。但我的目标是在第 7 个数字之后,一行仅显示 6 个数字,然后显示下一行。类似于所有数字。

这该怎么做?..

欢迎任何想法。

请帮我。

4

1 回答 1

1

您需要将 6 个数字批次打包到另一个类中:

class Batch
{
    public int One {get;set;}
    // etc
}

并为数据转发器提供以下列表:

var l = new List<Batch>();
dataRepeater1.DataSource = l;

然后,您的中继器将需要在其中查看Batch类属性的控件。类包装器是必需的,因为转发器将针对集合中的每个项目(DataTable例如行中的行)重复,因此要将它们分组,您需要手动执行此操作。

进一步阅读:

http://blogs.msdn.com/b/vsdata/archive/2009/08/12/datarepeater-control-for-windows-forms.aspx

于 2011-07-27T11:48:52.907 回答