Updatepanel 提供完整回发而不是异步回发

2023-11-27

我遇到了一个似乎非常著名的问题:我的 updatepanel 触发完整回发而不是异步回发。正常的解决方案是为所有动态添加的控件提供一个 ID,我已经这样做了,但我仍然得到完整的回发而不是异步回发...

这是代码:

HTML:

<asp:UpdatePanel ID="ItemsUpdatePanel" runat="server" UpdateMode="Conditional" ChildrenAsTriggers="False">
   <Triggers>
   </Triggers>    
   <ContentTemplate>
   <asp:ListView ID="PlayerItems" runat="server" GroupItemCount="5" 
                                    onitemdatabound="PlayerItems_ItemDataBound">
   <LayoutTemplate>

   ... Listview stuff ...

    </asp:ListView> 

    </ContentTemplate>
</asp:UpdatePanel>

有趣的部分是背后的 C# 代码(方法 PlayerItems_ItemDataBound),如下所示:

            ImageButton imgBtn = new ImageButton();
            imgBtn.ID = "itemBtn";
            imgBtn.Width = Unit.Pixel(30);
            imgBtn.ImageUrl = "~/Images/Game/Items/" + myItem.ItemImageUrl;

            ContextMenu menu = new ContextMenu();
            menu.BoundControls.Add(imgBtn);
            menu.ItemCommand += new CommandEventHandler(menu_ItemCommand);

            menu.AutoHide = true;
            menu.RolloverColor = Color.Gray;
            menu.ID = "MenuMenu";

            Panel panel = (Panel)(e.Item.FindControl("ItemPanel"));
            panel.Controls.Add(imgBtn);
            panel.Controls.Add(menu);

            AsyncPostBackTrigger trig = new AsyncPostBackTrigger();
            trig.ControlID = menu.UniqueID;
            trig.EventName = "ItemCommand";
            ItemsUpdatePanel.Triggers.Add(trig);

因此,我实际上向菜单添加了一个 AsyncPostBackTrigger,因此应该注册 ItemCommand 事件。当我单击此上下文菜单中的某个项目时,会发生完整的回发。

我一直在尝试在没有帮助的情况下使用 ChildrenAsTriggers 属性。我还上下移动了 AsyncPostBackTrigger 代码,同样没有帮助。

预先非常感谢..! 拉尔斯


在 UpdatePanel 的面板内的 ListView 内填充 CheckBoxList 时,我也有同样的经历。通过在 CheckBoxList 中添加以下代码解决了这个问题:

ClientIDMode="AutoID" 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Updatepanel 提供完整回发而不是异步回发 的相关文章

  • 无法在 CUDA 中找到 1 到 100 数字的简单和?

    我正在研究使用 CUDA 的图像处理算法 在我的算法中 我想使用 CUDA 内核找到图像所有像素的总和 所以我在cuda中制作了内核方法 来测量16位灰度图像的所有像素的总和 但我得到了错误的答案 所以我在cuda中编写了一个简单的程序来查
  • 如何从经过身份验证的 SecurityToken 中获取声明

    我将令牌作为字符串传递到 SOAP 服务中 并验证了该令牌是否有效 我现在有一个 SecurityToken 在调试模式下我可以看到所有声明 特别是我想传递到另一个方法的 userId 声明 我似乎不知道如何获得这些索赔 现在 我解码了令牌
  • 带有子菜单项的 asp.net 菜单,通过后面的代码重定向

    我有一个带有 2 级菜单项的菜单控件 我想通过 OnMenuItemClick 事件后面的代码进行导航 因为当我使用导航 Url 属性时 我的 ajax UpdateProgress 将不会启动 问题是 无论我单击什么子菜单项 当事件引发时
  • Visual Studio 2013 调试器显示 std::string 的奇怪值

    我有一个大型的 cmake 生成的解决方案 其中包含许多项目 由于某种原因 我无法查看字符串的内容 因为根据调试器 Bx Buf含有一些垃圾 text c str 正确返回 Hello 该问题不仅仅发生在本地字符串上 返回的函数std st
  • 获取列表框中视图中的项目

    我有一个 ListBox 其属性 VirtualizingStackPanel VirtualizationMode 设置为 回收 我正在绑定一个自定义集合 实现IList and IList
  • 如何在 C# 中以编程方式将行添加到 DataGrid?

    正如标题所述 我正在尝试使用 C 以编程方式将行添加到 DataGrid 但我似乎无法使其工作 这是我到目前为止所拥有的 I have a DataGrid declared as dg in the XAML foreach string
  • 公交车公共交通算法

    我正在开发一个可以查找公交路线的离线 C 应用程序 我可以提取时间表 巴士 路线数据 我正在寻找适用于基本数据的最简单的解决方案 可以使用什么算法来查找从巴士站 A 到巴士站 B 的路线 是否有适用于 C Java 的开源解决方案 数据库的
  • 使用 STL 流时如何格式化我自己的对象?

    我想将我自己的对象输出到 STL 流 但具有自定义格式 我想出了这样的东西 但由于我之前从未使用过 locale 和 imbue 所以我不知道这是否有意义以及如何实现 MyFacet 和operator 所以我的问题是 这是否有意义以及如何
  • 更改私有模块片段是否会导致模块重新编译?

    On 此页面有关 C 20 模块功能 https www modernescpp com index php c 20 modules private module fragment and header units 我发现了这样的说法 借
  • 如何从 Powerpoint 2010 导出电影?

    如何使用 MS Office PIA 主互操作程序集 或其他方式以编程方式将嵌入视频从 powerpoint 2010 导出到外部文件 在演示文稿中嵌入视频是 Powerpoint 2010 中的一项新功能 我找不到解决方案 PPTX 文件
  • 为什么连续抛出 2 个异常不会生成无法访问的代码警告?

    为什么以下代码行不会创建编译器警告 void Main throw new Exception throw new Exception 据我所知 编译器应该通知您无法到达第二个抛出异常 这显然是一个编译器错误 它是在 C 3 0 中引入的
  • 基于 ajax 的弹出窗口中的 Mathjax + CKEditor 4 + CKEditor

    我已经配置了 CKEditor 4 并且我的页面上有以下内容 我的页面中有一个 CKEditor 设置值的两个选项 这两个选项本身分别选项两个基于 ajax 的弹出窗口 这些基于 ajax 的弹出窗口包含 CKEditor 现在我有以下问题
  • C++网络序列化[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一种将 C 数据包序列化为网络流的解决方案 我在这里看到很多帖子提到人们 ACE 谷歌协议缓
  • Clang 5.0 上的 vsprintf 和 vsnprintf [-Wformat-nonliteral] 警告

    我有这段代码 static void err doit int errnoflag int level const char fmt va list ap int errno save unsigned long n char buf MA
  • 在 Visual Studio 2012 Express 中设置 C++ 调试环境

    我需要调试的应用程序需要设置环境变量 这在 Visual Studio 2012 中似乎非常复杂 我想做类似的事情 set path c foo c bar c windows c program files application set
  • Windows Phone 的 JSON 反序列化

    我正在尝试反序列化以下 JSON 但我真的不知道如何使用 JSON net 来完成这项工作 我正在使用 C 和 JSON Net 库 我的 JSON 如下 found 3 bounds 43 54919 172 62148 43 54487
  • 使用 Ajax 和 PHP 上传图像

    我想将图像上传到我的服务器 并控制 HTML 代码中的 PHP 回显 为此 我想使用 jQuery Ajax 但我不知道如何使用 Ajax 将图像发送到 PHP 这是一个大学项目 所以我不能使用任何类型的插件 我的实际代码 HTML
  • C++ 中的析构函数

    我的 AB h 文件中有一个构造函数 class AB private int i public AB i 0 constructor AB i 0 destructor virtual void methodA unsigned int
  • 如何配置 qt Creator 以显示 C++ 代码而不是反汇编程序?

    昨天我做了很多事情 比如更新 GCC Clang 和重新安装 Qt Creator 今天 在逐步调试我的代码时 调试器显示的是反汇编代码 而不是我编写的 C 代码 紧迫F10 or F11 调试器正在进入汇编代码而不是 cpp nor h我
  • 如何将模型绑定到动态创建的类 nancyfx

    首先感谢任何愿意查看我的问题的人 我对 Nancyfx 还很陌生 在尝试将 JSON 有效负载绑定到动态创建的类时遇到问题 我按照这篇文章中的代码动态创建了该类 在C 中动态创建一个类 https stackoverflow com que

随机推荐

  • 增加 iOS 5.x 中 UITextView 中表情符号字符的字体大小

    如果我有 UITextView 并将字体大小设置为 32 当我运行应用程序 在模拟器和设备上 时 我会看到一个大光标 并且我键入的文本就像我想象的那样出现 但如果我切换表情符号键盘 它们会显示很小 就像字体大小从未增加一样 我知道这些表情符
  • 从 Visual Studio 2015 构建时自动发布 Web 应用程序

    有没有什么方法可以在成功构建时使用预先创建的发布配置文件自动发布 Web 应用程序 我不想必须单击发布图标 需要在 Visual Studio 2015 上成功构建 Web 项目时发生这种情况 不使用宏 任何样品将不胜感激 拉米的解决方案有
  • 检查空手道的 2 个不同状态

    我有一个关于空手道框架的问题 我想知道我们是否可以检查空手道的 2 状态 例如 给定 url myUrl 当方法得到 然后状态 200 或 204 感谢您的帮助 Yes Then assert responseStatus 200 resp
  • C++:除了虚函数之外,还有哪些原因导致“未定义引用‘typeinfo for [class name]’”

    其中一些错误可以通过修改来解决 virtual void draw to virtual void draw 但是 除了虚拟函数之外 这些错误的其他原因可能是什么 出现以下错误可能是什么原因 tmp cciGEgp5 o rodata ZT
  • 标签、复选框和单选按钮

    我的网络应用程序使用如下例所示的表单 First Name Last Name Gender Male Female 我使用的标记类似于
  • 隐藏 Android 键盘按键预览

    我想要做的是仅隐藏显示您在使用软键盘时当前按下的键的弹出窗口 这可能吗 我正在创建自己的新键盘 不需要它们 据我所知 下图是实际的弹出键盘 您可以选择使用它来显示android popupKeyboard and android popup
  • 在javascript中获取DIV的宽度和高度

    我试图在用户更改时获取 div 宽度和高度 并将该数字提交到另一个页面 我似乎不知道如何获得宽度和高度
  • 如何在 Scala 中对可变长度的重复序列进行分组

    我有一个以某种模式重复的整数集合 val repeatingSequence List 1 2 3 1 2 3 4 1 2 1 2 3 4 5 当模式重复时 我想将该列表分段 在这种情况下 当序列返回到 1 时 val groupedByS
  • 使用 Kubernetes kubeadm 和 minikube 在虚拟机中创建节点

    我正在尝试使用同一台机器创建具有不同数量节点的 Kubernetes 集群 在这里 我想创建单独的虚拟机 并需要在这些虚拟机中创建节点 我目前正在探索 kubeadm 和 minikube 来完成这些任务 在探索的过程中 我有以下困惑 我需
  • 如何将一个元素移动到另一个元素中

    我想将一个 DIV 元素移动到另一个 DIV 元素中 例如 我想移动这个 包括所有孩子 div div 进入这个 div div 这样我就有了这个 div div div div 您可能想使用appendTo函数 添加到元素的末尾 sour
  • Express Node.js 不起作用

    我在 ubuntu 12 04 上安装了express 4以及node js npm和express generator 并使用以下命令创建了一个应用程序 express test hogan c less cd test npm inst
  • SearchBuf soWholeWord 意外输出

    测试时StrUtils SearchBuf with soWholeWord soDown 选项 出现了一些意想不到的结果 program Project1 Uses SysUtils StrUtils function WordFound
  • Azure Functions:绑定到 DocumentClient 与静态实例 - 推荐什么?

    我知道如何将查询直接绑定到 Azure 函数并在函数中使用 Cosmos DB 触发器 但是 我正在寻找使用方向DocumentClient 努吉特包Microsoft Azure Cosmos 直接地 There s 文档这解释了如何在执
  • 实现“show”函数

    我想实施show 二元 函数的方法并使其能够区分内函子 a gt a 类似于伪 Haskell 代码 instance Show a gt b where show fun lt
  • jquery:如何更新可拖动克隆ID?

    我想将可拖动项目添加到可排序列表中 这在我的示例中运行良好http jsbin com ipese5 35 问题是我想在拖动到可排序列表时更新克隆项目的 id 奇怪的是 下面的代码将 de ui 对象中的 id 更新为 new id 正如我
  • 将 RTF 文本从数据库加载到 TRichEdit

    我目前正在将我们的软件解决方案从 Delphi 7 迁移到 2010 大部分更改都很简单 只剩下少量障碍 在表单上 我们使用 TRichEdit 它显示从 MSSQL 数据库中的 blob 字段抓取的 rtf 文本 Delphi 7 中是这
  • 如何在常规管道作业中触发多分支管道 Jenkins 作业?

    我想触发特定的多分支管道作业 maven 发布 工作流程 测试 特定分支 在常规管道作业中 是否有我需要指定的特殊 build 命令模式 代码片段生成器仅打印 没有这样的工作 maven release workflow test 通过反复
  • 根据元素在另一个已排序列表中的位置对 python 中的列表进行排序

    我想根据预先排序的列表对 Python 中的列表进行排序 presorted list 2C 3C 4C 2D 3D 4D unsorted list 3D 2C 4D 2D 我该如何排序unsorted list使得这些值以相同的顺序出现
  • Angular 6 HTML选择菜单设置默认值

    我习惯了旧的 AngularJS 方式来选择菜单和选择默认值等 但我很难理解如何在 Angular 中执行此操作 6 我有一系列菜单项 fontChoices label Trebuchet value Trebuchet MS Helve
  • Updatepanel 提供完整回发而不是异步回发

    我遇到了一个似乎非常著名的问题 我的 updatepanel 触发完整回发而不是异步回发 正常的解决方案是为所有动态添加的控件提供一个 ID 我已经这样做了 但我仍然得到完整的回发而不是异步回发 这是代码 HTML