我有一个表格,上面有90个按钮,每天一个按钮。当用户首次登录该程序时,他们输入他们的用户名和日期。我想获取用户输入的日期并自动填充每个按钮的文本字段。例如,btnDay1的文本将是3月18日,btnDay2将是3月19日等等。
有人建议使用此代码:
DateTime time = dateTimepicker1.Value; //this is user selected date, you can use your own way
foreach(Button b in this.Controls.OfType<Button>())
{
if(b.Name != "button1" || b.Name != "button2")
{
b.Text = time.Date.ToString("dd MMM");
time = time.Date.AddDays(1); //setting for next button
}
}
但编译器告诉我,dateTimepicker1在其当前内容中不存在。我从来没有使用过dateTimepicker而且它不在我的教科书中,因此我不熟悉如何使用它。我查看了MSDN库,但是这个例子与DateTime time = dateTimepicker1.Value完全不同,它所做的就是让我比以前更加困惑。
答案 0 :(得分:0)
如果你有一个文本框来获取用户的输入,那么
DateTime time = DateTime.Parse(txtStartDate.Text);
foreach(Button b in this.Controls.OfType<Button>())
{
if(b.Name != "button1" || b.Name != "button2")
{
b.Text = time.Date.ToString("dd MMM");
time = time.Date.AddDays(1); //setting for next button
}
}
它希望你有两个按钮button1和button2需要避免。
为了更好地设置界面,您可以设置日期选择器而不是文本框,并将其名称更改为dateTimepicker1
并在问题中使用您的代码。