예제 #1
0
		public static void Validation_Load (Page p) 
		{
			string testType = (string)WebTest.CurrentTest.UserData;
			DataGridTest dg = new DataGridTest ();
			dg.ID = "mygrid";
			EditCommandColumn e;

			e = new EditCommandColumn ();
			e.ButtonType = ButtonColumnType.LinkButton;
			e.CancelText = "Cancel";
			e.EditText = "Edit";
			e.UpdateText = "Update";

			switch (testType) {
			case "ValidatingValid":
			case "ValidatingInvalid":
			case "ValidationGroupIncluded":
			case "ValidationGroupNotIncluded":
				e.CausesValidation = true;
				break;

			case "NotValidatingInvalid":
				e.CausesValidation = false;
				break;
			}

			switch (testType) {
			case "ValidationGroupIncluded":
			case "ValidationGroupNotIncluded":
				e.ValidationGroup = "Group1";
				break;

			default:
				e.ValidationGroup = "";
				break;
			}

			dg.Columns.Add (e);

			TextBox tb = new TextBox ();
			tb.ID = "Text1";
			switch (testType) {
			case "ValidatingValid":
				tb.Text = "111";
				break;

			case "ValidatingInvalid":
			case "NotValidatingInvalid":
			case "ValidationGroupIncluded":
			case "ValidationGroupNotIncluded":
				tb.Text = "";
				break;
			}

			RequiredFieldValidator v = new RequiredFieldValidator ();
			v.ControlToValidate = "Text1";
			switch (testType) {
			case "ValidationGroupIncluded":
				v.ValidationGroup = "Group1";
				break;

			case "ValidationGroupNotIncluded":
				v.ValidationGroup = "NotGroup1";
				break;

			default:
				v.ValidationGroup = "";
				break;
			}
			TemplateColumn tc = new TemplateColumn ();
			tc.EditItemTemplate = new ValidatingEditTemplate (tb, v);
			dg.Columns.Add (tc);

			ObjectDataSource ods = new ObjectDataSource ("MyObjectDS", "Select");
			ods.UpdateMethod = "Update";
			ods.DataObjectTypeName = "MyObjectDS";
			ods.ID = "MyDS";

			p.Form.Controls.Add (ods);

			dg.DataSource = ods;
			//dg.DataKeyField = "i";

			//DataTable table = new DataTable ();
			//table.Columns.Add (new DataColumn ("one", typeof (string)));
			//table.Columns.Add (new DataColumn ("two", typeof (string)));
			//table.Columns.Add (new DataColumn ("three", typeof (string)));
			//table.Rows.Add (new object [] { "1", "2", "3" });

			//dg.DataSource = new DataView (table);

			dg.EditItemIndex = 0;
			p.Form.Controls.Add (dg);

			dg.DataBind ();
			if (!p.IsPostBack) {
				WebTest.CurrentTest.UserData = dg.Items [0].Cells [0].Controls [0].UniqueID;
			}
		}