Tag: updatepanel

从内容页面更新MasterPage控件

我有一个带有Label的UpdatePanel ,我想在我的MasterPage更新。 该活动正在我的内容页面上进行,以下是代码。 内容ASP.net代码: <asp:SqlDataSource ID="dsPopulateTaskName" runat="server" ConnectionString="” SelectCommand=”QUERY”> C#代码隐藏: protected void ddlTaskName_onSelectIndexChanged(object sender, EventArgs e) { FilterMessages(); } public void FilterMessages() { DataTable msgTable = HttpContext.Current.Session[“MessageTable”] as DataTable; string query = “”; Stack msgStack = new Stack(); if (ddlClient.SelectedIndex > 0) { query += “Client = ‘” + ddlClient.SelectedItem.Text + “‘ OR Client is […]

在动态添加UserControl到UpdatePanel时,具有相同ID的服务器控件中的错误状态

这是我想要做的。 我有一个带有两个链接按钮和一个updatepanel的页面(两个链接按钮触发updatepanel)。 我有两个usercontrols,其标签具有相同的ID。 当我单击第一个链接按钮时,我将第一个usercontrol添加到updatepanel并将标签值设置为datetime.now 当我点击第二个链接按钮时,我添加了第二个用户控件但我看到第一个控件中的标签值是在第二个用户控件的标签中设置的。 如果id不同则没有问题 – 但在我的情况下,用户控件是由不同的团队开发的,我按照我提到的方式集成它们 – 所以他们可能有相同的ID。 我已经浏览了所有并尝试了各种建议,但我不能让这个工作,任何帮助将不胜感激。 谢谢 乔布埃尔

UpdatePanel中的双重PostBack

我有一个问题,ASP.NET按两次单击按钮。 该按钮位于UpdatePanel内,但是当我点击它时,我得到两个回发,然后是两次按钮点击,然后两次调用我的DAL(按此顺序)。 我之前从未遇到过这种情况,将AutoEventWireup更改为false无效。 我能想到的唯一解决方法是隐藏Web服务中的function并使用jQuery处理复杂问题,我不想为一个小项目做些事情。 萤火虫转储在下面(这些都发生在一次点击)。

异步调用.NET方法并在完成时绑定到网格

Container.RetrieveItems()调用一段时间的服务,所以我想异步调用它(在检索项之后,它们被设置为Container类的List属性)。 完成检索项目后,我希望它更新一个在updatePanel内的gridView(updatePanel Mode =“Conditional”和ScriptManager EnablePartialRendering =“true”.UpdatePanel没有触发项)。 我设置了断点并逐步完成了每一步。 检索项目,网格是数据绑定然后它调用更新。 没有exception被抛出但网格没有随内容更新。 如果我使用触发器和Timer.OnTick事件将UpdatePanel设置为更新它工作正常,但是我只需要在检索项目后更新它,因此在完成服务调用后触发手动UpdatePanel.Update()将是理想的。 我做了很多搜索,但所有答案都是’你忘了调用DataBind()’ 有什么我想念的吗? private void UpdateGrid() { grid.DataSource = Container.List; grid.DataBind(); updatePanel.Update(); } protected void Page_Load(object sender, EventArgs e) { var task = Task.Factory.StartNew(Container.RetrieveItems); task.ContinueWith((x) => UpdateGrid()); } 更新:我设置了一个更简单的测试来尝试识别问题。 我创建了一个标签,其Text属性将在方法完成时更新。 当页面加载时,它调用方法并在方法完成时调用updatePanel.Update()但没有更改。 根据Jaimes的建议,我尝试在Button_click的回发中调用手动更新,它确实更新了标签。 这就是为什么我当前的设置无法正常工作,尽管我仍然在寻找在完成异步任务时更新内容的最佳方法。

在.NET中使用AJAX和ViewState的行为不一致

我发现在我的浏览器上点击“刷新”按钮会暂时搞砸UpdatePanel内的控件的ViewState。 这是我的情况:我创建了一个自定义WebControl,用于在ViewState中存储值。 我将此控件放在UpdatePanel中。 当我点击浏览器上的“刷新”按钮时,它会暂时消除ViewState中的值。 但是,在下一个回发中,在我点击“刷新”之前在ViewState中的值神奇地重新出现。 这种行为搞砸了我的webcontrol。 在我点击“刷新”之后,控件返回到其初始状态,因为ViewState为空并且IsPostBack设置为false。 但是,当我单击我的WebControl中的一个回发控件时,WebControl将在我点击“刷新”之前使用ViewState中的相同值重新加载。 奇怪的是,这只发生在我使用AJAX时。 当我的控件在UpdatePanel之外时,Firefox会给我标准消息,“要显示此页面,Firefox必须发送重复之前执行的任何操作(例如搜索或订单确认)的信息(重新发送)(取消) “。 这很好,因为至少行为是一致的。 但是,我绝对必须在这个项目中使用AJAX。 所以这就是我想做的 – 我想让“刷新”行为保持一致。 如果点击“刷新”根本不影响ViewState,那将是最好的。 但是如果它必须消灭ViewState,那就好了,只要ViewState STAYS消失了。 这些东西都没有价值消失并再次出现。 哦是的,这是我的示例代码: using System; using System.Data; using System.Configuration; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; namespace TestControls { public class TestControl : WebControl { int _clickCount; bool […]

为什么不asp:UpdatePanel刷新图像?

我有以下UpdatePanel从ashx处理程序获取图像,所有这些都在页面刷新时正常工作。 但是,当计时器触发时,标签会以当前时间刷新,但不会刷新图像。 计时器例程是: protected void UpdateTimer_Tick(object sender, EventArgs e) { DateStampLabel.Text = DateTime.Now.ToString(); } 为什么图像没有刷新?

Usercontrol回发在updatepanel中不起作用

我有一个包含更新面板的母版页: 然后我有Default.aspx页面使用母版页文件: 我以编程方式将usercontrols加载到id为plhCurrentItem的占位符中。 问题是当我单击usercontrol中的按钮时,没有事件触发。 用户控件刚刚消失,updatepanel保持空白。 我究竟做错了什么? 更新 用于添加用户控件的代码。 从Page_load事件调用LoadControls方法。 Control ctlCurrentItem = null; public string currentControl { get { return ((string)Session[“currentControl”]); } set { Session[“currentControl”] = value; } } public void LoadControls() { switch (currentControl) { case “Home”: ctlCurrentItem = Page.LoadControl(“~/pages/Home.ascx”); ctlCurrentItem.ID = “Home”; break; case “Resume”: ctlCurrentItem = Page.LoadControl(“~/pages/Resume.ascx”); ctlCurrentItem.ID = “Resume”; break; case […]

更新面板工作非常慢

我正在编写一个用户可以注册的应用程序。 注册一个选项可以选择几个选项,根据这些regiester字段是否可见,是否需要。 我想到所有字段都在updatePanel中,当用户更改注册选项时,我会在服务器端设置这些字段的可见性。 它的工作原理但速度极慢,而且在FF上有更多我有给定的错误: 状态信息对于此页面无效,可能已损坏 updatePanel中包含其他字段的3个复选框 每个字段都在dl标记中,其中runat=”server> 我不得不这样做因为“必需”选项我只是将css类添加到此dl(需要在javascriptvalidation中。如果字段应该是可见的,我为给定的dl设置visible =“false”然后该字段,例如FirstName在回发后,标题等等是不可见的。 难道我做错了什么 ? 为什么它需要这么长时间(在本地主机上约4分钟)并且在Firefox中它并没有真正起作用(当我使用调试时我认为该过程在ff上完成没有错误,我根本不明白:) 如果更新Panel非常弱,那么更改可见性和向所有dls添加所需类的其他选项。 逻辑非常复杂,必须对DB进行查询,因此简单的javascript非常棘手。 谢谢你的任何提示, 哦,我正在使用ASP.Net并且不能升级这个项目。 谢谢你的帮助,再见

如何在updatepanel中的异步回发后推迟客户端的更新

我有一个使用asp.net的UpdatePanels的旧系统 postback完成后,我们知道UpdatePanel的内部已更新 我可以在客户端以某种方式延迟此更新吗? 那可能吗? 因此,当postback开始时,我会在客户端设置一个javascript datetime object 一旦postback完成,并且data从服务器返回,在更新client side interface ,我检查已经过了多少毫秒并且我延迟了客户端的更新,直到经过了某些毫秒 这可能吗? asp.net 4.5 c# 让我澄清一下 我希望在ajax回发请求开始后,页面的每次更新都正好是500毫秒 但服务器延迟未知,并且每个位置都会发生变化 假设对于人1,服务器延迟是122毫秒 对于人2,服务器延迟是234 对于人3,服务器延迟是444 所以我将不得不在客户端延迟页面更新 为此人1:378毫秒 对于这个人2:266毫秒 对于这个人3:56毫秒 我检查过,我发现有一个function: Sys.WebForms.PageRequestManager pageLoading Event 所以如果我可以以某种方式覆盖此函数调用的函数来更新我可以实现的页面 ( 我仍然不知道它调用什么function来完成客户端的更新操作 ) 让我们假设在里面 Sys.WebForms.PageRequestManager pageLoading Event updateTheChanges函数 所以,如果我可以覆盖此updateTheChanges函数并延迟调用它我可以实现我想要的 我需要这样的东西,它将覆盖updatepanel的更新function。 所以我可以延迟调用这个函数 ASP.Net Webforms w / AJAX慢渲染 TY 这里是web资源文件 脚本资源1: http : //pastebin.com/0rSCMn3g 脚本资源2: http : […]

如何让UpdatePanel忽略点击里面的一个按钮?

UpdatePanels中的按钮会自动注册为该UpdatePanel的触发器。 有没有办法让UpdatePanel忽略其中一个内部按钮? 也就是说,要使其单击此按钮不会触发任何类型的回发?