我正在创建基于 SQL 查询结果动态创建的按钮:
private void createPagingButtons(DateTime firstDayofWeek, DateTime lastDayofWeek)
{
int i = 1;
SqlDataReader returnedQuery = getDefaultUser(firstDayofWeek, lastDayofWeek);
while (returnedQuery.Read())
{
string buttonName = returnedQuery["Person"].ToString();
System.Diagnostics.Debug.WriteLine(buttonName);
Button btn = new Button();
btn.ID = i.ToString();
btn.Click += new EventHandler(btn_Click);
btn.Text = buttonName;
pagingPanel.Controls.Add(btn);
i++;
}
}
我尝试分配唯一按钮 ID 的方式是为它们分配一个数字,该数字在每次 while 循环迭代时递增:
btn.ID = i.ToString();
但它不起作用,我收到一个错误:找到具有相同 ID '1' 的多个控件。FindControl 要求控件具有唯一的 ID。
为什么会发生这种情况,我该如何解决?