c# - ASP.NET C# ListBox 服务器控件不会禁用

标签 c# asp.net listbox

我有 4 个服务器端 ListBox 控件。所有这些都将其 Enabled 属性设置为 false,但在呈现时它们肯定是启用的。它们都是多选的。这些没有数据绑定(bind)或触摸它们背后的任何代码。下面是所有这些的标记(保存 ID)。我正在使用 IIS6 运行 .NET Framework v4。

<asp:ListBox runat="server" ID="lstProduct" Enabled="false" SelectionMode="Multiple" Rows="6"></asp:ListBox>

这是运行时生成的标记:

<select size="6" name="ctl00$ctl00$MainContent$MainContent$lstProduct" multiple="multiple" id="MainContent_MainContent_lstProduct" class="aspNetDisabled">

最佳答案

我找到了一个解决方案。在<system.web> web.config 部分,您必须添加 <pages controlRenderingCompatibilityVersion="3.5"> .

在 Asp.net 4.0 中,任何不接受特定用户输入(文本框或密码)的控件都不会使用 disabled="disabled" 呈现。 Control.Enabled = false 时的属性已设置。

关于c# - ASP.NET C# ListBox 服务器控件不会禁用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3709483/

相关文章:

c# - Raven 查询仅有时有效

.net - "Good"发布配置中的 ASP.net 堆栈跟踪或如何获取有问题的代码

asp.net - 为什么我应该使用 Telerik radcontrols 而不是 Visual Studio 内置控件?

c# - 选择列表框中的第一项

jquery - 如何使用 jQuery 获取 ListBox 中最后选定的值?

c# - 打印Pdf文档C#字体生成的Barcode

c# - 如何追加\in字符串?

c# - 在 C# 中继承接口(interface)

javascript - 每次在 GridView 中单击按钮或链接时如何打开不同的新弹出窗口

c# - 如何在列表框上实现增量搜索?