我在表单视图中内置了大约4个字段,但是如果用户希望添加更多信息,则每个字段最多只能显示10个(注意:这是必填项)
所以它就像:NameTextBox1直到NameTextBox10和TestTextBox1直到TestTexBox10
如果用户单击“添加字段”按钮,则会显示其他文本框。
现在开始提问:其中一个字段是下拉列表,此后我有10个下拉列表,这些下拉列表都具有从相同功能读取的相同信息。与编写相同的东西十次相比,有没有一种更有效的方法来执行以下步骤?
DropDownList DropDownList1 = (DropDownList)EntryFormView.FindControl("DropDownList1");
DropDownList1.DataSource = GeographicManager.ReadLocations();
DropDownList1.DataBind();
将其包装到另一个带有ID的函数中:
private void initDropDown(string dropDownID)
{
DropDownList DropDownList1 = (DropDownList)EntryFormView.FindControl(dropDownID);
DropDownList1.DataSource = GeographicManager.ReadLocations();
DropDownList1.DataBind();
}
initDropDown("DropDownList1");
initDropDown("DropDownList2");
如果您需要一次全部初始化它们,则可以使用循环来完成:
for (int i=1; i<=10; i++)
{
initDropDown("DropDownList" + i);
}
或者,您可以将其ID放入数组中并对其进行迭代。如果您的ID不遵循“ DropDownListX”的简单模式,则也很有用:
string[] dropDownIDs = ["DropDownList1", "DropDownListTwo", "TheDropDownList"];
foreach (String ID in dropDownIDs)
{
initDropDown(ID);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句