我正在构建一个函数,允许我将验证器添加到动态创建的表中。它们可以正常工作,因为它们会显示在页面上并正常运行。但是我试图通过代码隐藏来添加“ Display”属性,并且任何参数组合都失败了...
RequiredFieldValidator newRQValid = new RequiredFieldValidator();
newRQValid.SetFocusOnError = true;
newRQValid.ControlToValidate = txtID;
newRQValid.Display = "dynamic"; <<---
strID = "cv" + cellID;
newRQValid.ID = strID;
newRQValid.ErrorMessage = txtErrorMessage;
newRQValid.InitialValue = initval;
tCell.Controls.Add(newRQValid);
我尝试使用带引号和不带引号的方法,但是“动态”甚至没有出现在自动完成功能中,因此我假设我只是误解了。
我也有将属性添加到比较验证器的类似问题:
CompareValidator newCMValid = new CompareValidator();
newCMValid.SetFocusOnError = true;
newCMValid.ControlToValidate = cellID;
newCMValid.ControlToCompare = "txt_clm_dob";
newCMValid.Type = ValidationDataType(DateTime); <<==
newRGValid.Display = Dynamic; <<==
strID = "cv" + cellID;
newCMValid.ID = strID;
newCMValid.ErrorMessage = txtErrorMessage;
newCMValid.Operator = LessThanEqual; <<==
tCell.Controls.Add(newCMValid);
还要对每个尝试几次。
那么那里正确的语法是什么,或者在某种程度上不允许在其中添加那些属性?
最佳答案
newRQValid.Display = ValidatorDisplay.Dynamic;
newCMValid.Type = ValidationDataType.Date;
newCMValid.Operator = ValidationCompareOperator.LessThanEqual;