我正在使用Windows应用程序。在那种形式我使用DataRepeater控件。 我在该控件中显示数字。 (vs 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更改为水平显示所有数字的时间 在排队。但我的目标是在第7天之后只显示6个数字 数字向前显示下一行。与所有数字相似。
如何做到这一点?..
欢迎任何想法。
请帮帮我。
答案 0 :(得分: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