컨트롤뿐만 아니라 페이지에 컨트롤을 추가하고 있지만 잘못된 것이 있습니다.런타임에 RequiredFieldValidator 추가
int i = 4; // for testing; for now
// add surname textbox
PlaceHolderResidents.Controls.Add(new LiteralControl("<div class=\"control-group\">"));
TextBox tb1 = new TextBox();
tb1.ID = "LastName" + i;
tb1.CssClass = "input-xlarge";
labelLastName.AssociatedControlID = tb1.ID;
PlaceHolderResidents.Controls.Add(labelLastName);
PlaceHolderResidents.Controls.Add(new LiteralControl("<div class=\"controls\">"));
PlaceHolderResidents.Controls.Add(tb1);
RequiredFieldValidator rfv1 = new RequiredFieldValidator();
rfv1.ControlToValidate = tb1.ID; // ERROR HERE
rfv1.ErrorMessage = GetLocalResourceObject("RequiredFieldValidator_LastNameResource.ErrorMessage").ToString();
PlaceHolderResidents.Controls.Add(rfv1);
나는이 코드는 Page_Load()
에 위치 오류를
System.Web.HttpException: Unable to find control id 'LastName4' referenced by the 'ControlToValidate' property of ''.
을 얻고있다,하지만 난 성공없이 다른 Page
이벤트에 배치했습니다. 어떤 아이디어? 고맙습니다.
편집 : 이 섹션 전체 코드.
PlaceHolderResidents.Controls.Add(new LiteralControl("\n\n<div class=\"control-group\">"));
Label labelLastName = new Label();
labelLastName.Text = GetLocalResourceObject("LastNameLabelResource.Text").ToString();
labelLastName.CssClass = "control-label asterisk";
TextBox tb1 = new TextBox();
tb1.ID = "LastName" + i;
tb1.CssClass = "input-xlarge";
labelLastName.AssociatedControlID = tb1.ID;
PlaceHolderResidents.Controls.Add(labelLastName);
PlaceHolderResidents.Controls.Add(new LiteralControl("\n<div class=\"controls\">"));
PlaceHolderResidents.Controls.Add(tb1);
PlaceHolderResidents.Controls.Add(new LiteralControl("\n<p class=\"help-block\">"));
RequiredFieldValidator rfv1 = new RequiredFieldValidator();
rfv1.ControlToValidate = tb1.ID;
rfv1.ErrorMessage = GetLocalResourceObject("RequiredFieldValidator_LastNameResource.ErrorMessage").ToString();
rfv1.EnableClientScript = false;
PlaceHolderResidents.Controls.Add(rfv1);
PlaceHolderResidents.Controls.Add(new LiteralControl("\n</p></div></div>"));
페이지에 이러한 유효성 검사기가 더 많으며 대부분 작동하고 있습니다. 페이지 작업에서 많은 유효성 검사기 위의 코드를 주석 처리하면 (어떤 이유로 동일한 오류가 발생하는 RequiredFieldValidator
이 하나 있습니다).
편집 2 : 위의 코드가 작동합니다. 무엇이 잘못되었는지 확실하지 않습니다.
코드가 정상적으로 작동합니다. 나머지 코드는 게시하십시오. – Win
문제가있는 코드를 붙여 넣었습니다. –