Csharp/C#教程:ASP.Net CascadingDropDown和EnableEventValidation =“false”分享


ASP.Net CascadingDropDown和EnableEventValidation =“false”

我刚从AJAX Toolkit获得了一个CascadingDropDown,使用SelectedIndexChanged重定向到一个传递所选值的查询字符串的页面。 我很好吃!

但是,我只通过向页面添加EnableEventValidation =“false”来使SelectedIndexChanged事件起作用。 问题是CascadingDropDown将作为产品选择器放置在我的网站的MasterPage中。

我并不热衷于将EnableEventValidation =“false”添加到我的MasterPage中! 我已经查看了MSDN上的ClientScriptManager.RegisterForEventValidation方法,它已经超越了我的脑海。

什么是最好的事情? 是否有使用ClientScriptManager.RegisterForEventValidation的简单示例?

干杯…

编辑:这是代码:

 
Series:
Printers:

这是事件:

 protected void PrinterList_SelectedIndexChanged(object sender, EventArgs e) { int printerID = Convert.ToInt32(PrinterList.SelectedValue); System.Web.HttpContext.Current.Response.Redirect("Default.aspx?PID="+printerID); } 

颈部问题的这种痛苦的答案是自定义下拉控件!

所以关闭这个问题,并希望帮助其他人解决这个问题,这就是我所做的:

我使用以下代码创建了一个名为NoValidationDropDownList.cs的cs文件

 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI.WebControls; namespace My.Namespace.Controls { public class DdlNoEventValidation : DropDownList { } } 

然后在下拉控件所在的aspx页面上(在我的例子中是MasterPage)我放置了这个:

 <%@ Register TagPrefix="asp" Namespace="My.Namespace.Controls" %> 

接下来我修改了级联下拉框,如下所示:

 

据我了解,创建自定义下拉控件可以绕过事件validation。 这样,您无需关闭整个页面的事件validation。 在我的情况下,由于控件位于MasterPage中,因此整个站点的事件validation将被关闭!

唉这不是我原来的工作,所以这里是原始参考: http : //johanleino.wordpress.com/2009/11/17/cascadingdropdown-casues-invalid-postback-or-callback-argument-error/

谢谢约翰!

希望这可以帮助…

上述就是C#学习教程:ASP.Net CascadingDropDown和EnableEventValidation =“false”分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1006702.html

(0)
上一篇 2021年12月29日
下一篇 2021年12月29日

精彩推荐