public Control[] CreateSut() { Assertion.IsFalse(WcagHelper.Instance.IsWaiConformanceLevelARequired()); List <Control> controls = new List <Control>(); _label = new Label(); _label.Text = "Test Result: ###"; controls.Add(_label); _postBackEventHandler = new PostBackEventHandler(); _postBackEventHandler.ID = "PostBackEventHandler"; _postBackEventHandler.PostBack += HandlePostBack; controls.Add(_postBackEventHandler); Table sutTable = new Table(); sutTable.ID = "SutTable"; sutTable.EnableViewState = false; _testControlGenerator = new TestControlGenerator(_sutPage, _postBackEventHandler); _testControlGenerator.Click += TestControlGeneratorOnClick; foreach (Control initialControl in _testControlGenerator.GetTestControls(null)) { sutTable.Rows.Add(CreateRow(initialControl)); } controls.Add(sutTable); return(controls.ToArray()); }
public TestControlGenerator(Page page, PostBackEventHandler postBackEventHandler) { ArgumentUtility.CheckNotNull("page", page); ArgumentUtility.CheckNotNull("postBackEventHandler", postBackEventHandler); _page = page; _postBackEventHandler = postBackEventHandler; }
private string AddSyncPostBackEventHandlerToPage() { var syncPostBackEventHandler = new PostBackEventHandler { ID = "SyncPostBackTarget" }; AddPostBackEventHandlerToPage(syncPostBackEventHandler); syncPostBackEventHandler.PostBack += HandlePostBack; return(syncPostBackEventHandler.UniqueID); }
private string AddAsyncPostBackEventHandlerToPage() { var asyncPostBackEventHandler = new PostBackEventHandler { ID = "AsyncPostBackTarget" }; AddPostBackEventHandlerToPage(asyncPostBackEventHandler); var sm = ScriptManager.GetCurrent(Page); if (sm != null) { sm.RegisterAsyncPostBackControl(asyncPostBackEventHandler); } asyncPostBackEventHandler.PostBack += HandlePostBack; return(asyncPostBackEventHandler.UniqueID); }
public string GetUrl(PostBackEventHandler Callback, object State) { byte[] Bin = new byte[32]; string Key; lock (this.synchObj) { rnd.GetBytes(Bin); Key = Base64Url.Encode(Bin); if (this.queries is null) { this.queries = new Cache <string, KeyValuePair <PostBackEventHandler, object> >(int.MaxValue, TimeSpan.FromMinutes(5), TimeSpan.FromMinutes(5)); this.queries.Removed += this.Queries_Removed; } this.queries[Key] = new KeyValuePair <PostBackEventHandler, object>(Callback, State); this.queries[string.Empty] = new KeyValuePair <PostBackEventHandler, object>(null, null); // Keep cache active to avoid multiple recreation when a series of requests occur in sequence. } return("http://localhost:8080" + this.ResourceName + "/" + Key); }
protected override void OnInit(EventArgs e) { base.OnInit(e); AsyncPostBackInsideUpdatePanelButton.Click += HandlePostBack; AsyncPostBackOutsideUpdatePanelButton.Click += HandlePostBack; SyncPostBackInsideUpdatePanelButton.Click += HandlePostBack; SyncPostBackOutsideUpdatePanelButton.Click += HandlePostBack; AsyncPostBackInsideUpdatePanelLinkButton.Click += HandlePostBack; AsyncPostBackOutsideUpdatePanelLinkButton.Click += HandlePostBack; SyncPostBackInsideUpdatePanelLinkButton.Click += HandlePostBack; SyncPostBackOutsideUpdatePanelLinkButton.Click += HandlePostBack; AsyncPostBackInsideUpdatePanelWebButton.Click += HandlePostBack; AsyncPostBackOutsideUpdatePanelWebButton.Click += HandlePostBack; SyncPostBackInsideUpdatePanelWebButton.Click += HandlePostBack; SyncPostBackOutsideUpdatePanelWebButton.Click += HandlePostBack; DropDownMenuInsideUpdatePanel.EventCommandClick += HandlePostBack; ListMenuInsideUpdatePanel.EventCommandClick += HandlePostBack; _postBackEventHandler = new PostBackEventHandler(); _postBackEventHandler.ID = "PostBackEventHandler"; _postBackEventHandler.PostBack += HandlePostBack; Controls.Add(_postBackEventHandler); string asyncPostBackCommandInsideUpdatePanelID = "AsyncPostBackCommandInsideUpdatePanel"; AsyncCommandInsideUpdatePanelHyperLink.NavigateUrl = "#"; AsyncCommandInsideUpdatePanelHyperLink.Attributes["onclick"] = Page.ClientScript.GetPostBackEventReference(_postBackEventHandler, asyncPostBackCommandInsideUpdatePanelID); string syncPostBackCommandInsideUpdatePanelID = "SyncPostBackCommandInsideUpdatePanel"; ((ISmartPage)Page).RegisterCommandForSynchronousPostBack(_postBackEventHandler, syncPostBackCommandInsideUpdatePanelID); SyncCommandInsideUpdatePanelHyperLink.NavigateUrl = "#"; SyncCommandInsideUpdatePanelHyperLink.Attributes["onclick"] = Page.ClientScript.GetPostBackEventReference(_postBackEventHandler, syncPostBackCommandInsideUpdatePanelID); }
protected override void AddPostBackEventHandlerToPage(PostBackEventHandler postBackEventHandler) { Controls.Add(postBackEventHandler); }
protected abstract void AddPostBackEventHandlerToPage(PostBackEventHandler postBackEventHandler);
protected override void AddPostBackEventHandlerToPage(PostBackEventHandler postBackEventHandler) { UpdatePanel.TemplateControl.Controls.Add(postBackEventHandler); }