表用户控制-访问UC中的复选框

本文关键字:复选框 UC 访问 用户 控制 | 更新日期: 2023-09-27 18:25:49

我创建了一个表用户控件。在表中的每个单元格中,都有复选框。如何访问default.aspx页面中所选复选框的属性。

我已将表用户控件拖到default.aspx 中

  <uc1:SchTable ID="SchTime1" runat="server" />

我对用户控制比较陌生。出于可维护性的考虑,正在尝试。我通过在与default.aspx相同的页面上对表进行硬编码(不使用用户控件),通过

表用户控制-访问UC中的复选框

,成功地使代码工作起来

向UserControl添加一个属性,用于访问和返回所需的数据。

SchTable中,您可以添加任意数量的公共属性和方法。一些例子:

public IEnumerable<ListItem> SelectedItems
{
   get 
   {
       return ACheckboxList.Items.Cast<ListItem>().Where(i => i.Selected); 
   }
}
public IEnumerable<Checkbox> GetAllCheckboxes()
{
     //Find and return the checkboxes here just like you would in the page
}

然后在Default页面中,您可以访问该信息:

var selected = SchTime1.SelectedItems;
var checkboxes = SchTime1.GetAllCheckboxes();

这里有一个MSDN教程,详细介绍了这一切。