以下是我的情景,希望我得到一个答案,因为我在过去两天都在努力解决这个问题。
假设我有一个如下课程
public partial class School{
public TransmissionHeader SchoolDetails;
private List<student details> invoice = new List<student details>();
public List<StudentDetails> StudentDetails
{
get { return student details; }
set { student details= value; }
}
}
public partial class StudentDetails{
public Studentheader Studentheader;
private List<Marks> marks= new List<Marks>();
public List<Marks> Marks
{
get { return marks; }
set { marks= value; }
}
private List<activitydetails> activitydetails= new List<activitydetails>();
public List<ActivityDetails> ActivityDetails
{
get { return activitydetails; }
set { activitydetails= value; }
}
public partial class ActivityDetails
{
public string Activity number;
public sports Sports;
}
public partial class Sports
{
public string Activity number;
public string Sportstype;
public string SportsLocation;
}
页面上有一个下拉列表,如果更改下拉列表中的值,则会在页面上动态加载一些文本框(服务器端编码)。
假设Sportstype是在页面上动态加载的文本框,我如何捕获用户输入的值并将其保存在Sports--Sportstype
中。
希望我有意义。谢谢。
答案 0 :(得分:1)
这取决于文本框的创建方式。
如果创建文本框的代码可以为其指定唯一名称,则可以使用FindControl方法或仅通过名称(sportsTextBox3
)找到它。
如果它是有序集合的一部分(例如转发器),则可以通过索引器(sportCollection[sportIndex].sportsTextBox
)访问它。
如果它在DataGrid中,那么您可以通过迭代它的Controls
属性(以及子代的Controls
属性来定位控件,如果需要的话,递归地)。
<强>更新强>
这样的东西?
private Sports GetSelectedSports()
{
Sports sports = new Sports();
sports.Sportstype = sportsTypeTextBox.Text;
return sports;
}