复选框列表验证
CheckBoxList Validation
我需要同时验证 2 个 CheckBoxList。这意味着我可以从任一列表中选中一个框,并且验证必须通过。实施这样的事情的正确方法是什么?
我很想扩展 CustomValidator,添加一个 属性 ControlValueId2 来传递我的第二个 CheckBoxList 的 ID,但我忍不住觉得必须有更好的方法。
我使用 2 个复选框列表的原因是因为数据来自具有不同模式的 2 个不同的数据库,即使它们看起来相同,但实际上它们是不同的。我认为您不能将 2 个数据源绑定到一个复选框列表?
网络表单有点新,所以任何见解都将不胜感激。对不起,我不能 post 任何代码,但我希望我足够清楚!
同时验证两个控件会有点麻烦。我倾向于更简单的解决方案,将您的两个数据源聚合到一个复选框列表中。
public void Page_Load(Object sender, EventArgs e)
{
// Get items from database table 1
var items1 = GetTable1Data();
foreach(var item in items1)
{
this.checkboxList1.Items.Add( new ListItem(item.DisplayMember, item.ValueMember));
}
// Get items from database table 2
var items2 = GetTable2Data();
foreach(var item in items2)
{
this.checkboxList1.Items.Add( new ListItem(item.DisplayMember, item.ValueMember));
}
}
那么您应该能够在单个复选框列表上使用 requiredfieldvalidator
我需要同时验证 2 个 CheckBoxList。这意味着我可以从任一列表中选中一个框,并且验证必须通过。实施这样的事情的正确方法是什么?
我很想扩展 CustomValidator,添加一个 属性 ControlValueId2 来传递我的第二个 CheckBoxList 的 ID,但我忍不住觉得必须有更好的方法。
我使用 2 个复选框列表的原因是因为数据来自具有不同模式的 2 个不同的数据库,即使它们看起来相同,但实际上它们是不同的。我认为您不能将 2 个数据源绑定到一个复选框列表?
网络表单有点新,所以任何见解都将不胜感激。对不起,我不能 post 任何代码,但我希望我足够清楚!
同时验证两个控件会有点麻烦。我倾向于更简单的解决方案,将您的两个数据源聚合到一个复选框列表中。
public void Page_Load(Object sender, EventArgs e)
{
// Get items from database table 1
var items1 = GetTable1Data();
foreach(var item in items1)
{
this.checkboxList1.Items.Add( new ListItem(item.DisplayMember, item.ValueMember));
}
// Get items from database table 2
var items2 = GetTable2Data();
foreach(var item in items2)
{
this.checkboxList1.Items.Add( new ListItem(item.DisplayMember, item.ValueMember));
}
}
那么您应该能够在单个复选框列表上使用 requiredfieldvalidator