由于ASP.NET的CheckBoxList控件不允许使用其中一个标准验证控件(即RequiredFieldValidator)进行验证,因此我想创建一个UserControl,只要我需要一个复选框列表,我就可以在项目中使用它。需要检查一个或多个方框。
可以将标准CheckBoxList拖到页面上,然后根据需要手动添加<asp:ListItem>
控件。有没有什么方法可以创建一个UserControl让我手动(在标记中,而不是以编程方式)以类似的方式从我的页面插入ListItems?
换句话说,我可以将UserControl插入页面,然后从 Page 的Designer视图(即,不是UserControl的设计器视图),我可以手动添加我的ListItems像这样:
<uc1:RequiredCheckBoxList>
<asp:ListItem Text="A" value="B"></asp:ListItem>
<asp:ListItem Text="X" value="Y"></asp:ListItem>
</uc1:RequiredCheckBoxList>
如果UserControl不是我正在寻找的最终结果的合适选择,我会接受其他建议。
请注意我知道CustomValidator控件(这是我计划在UserControl中验证的方式)。每次我需要其中一个必需的复选框列表时,编写相同的基本代码只是一个痛苦,这就是为什么我想创建一个可重用的控件。
答案 0 :(得分:1)
解决此问题的一种更简单的方法是使用标准CheckBoxList,但专门为CheckBoxList创建一个特殊的服务器验证程序控件。以下文章介绍了如何解决此问题 - Creating Validator Controls for the CheckBox and CheckBoxList。