ASP.NET 4 ListBox控件无法被禁用
问题描述
在 ASP.NET 4 的 WebForm 应用程序中,将 ListBox 服务器控件的 Enabled 属性设置为 false 后,并没有禁用该控件。
测试程序
测试程序的 WebForm 页面文件 TestForm.aspx:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TestForm.aspx.cs" Inherits="WebAppTester.TestForm" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>测试页</title>
<link href="Main.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ListBox ID="lstTest" Rows="4" runat="server" />
<asp:Button ID="btnDisable" Text="禁用" OnClick="Button_Click" runat="server" />
<asp:Button ID="btnEanble" Text="启用" OnClick="Button_Click" Enabled="false" runat="server" />
</div>
</form>
</body>
</html>
以及相应的代码隐藏文件 TestForm.aspx.cs:
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using Skyiv.Common;
namespace WebAppTester
{
public partial class TestForm : PageEx
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
lstTest.DataSource = Enum.GetNames(typeof(DateTimeKind));
lstTest.SelectedIndex = 1;
lstTest.DataBind();
}
}
protected void Button_Click(object sender, EventArgs e)
{
Switch(((Button)sender) == btnEanble);
}
void Switch(bool isEnable)
{
btnDisable.Enabled = isEnable;
btnEanble.Enabled = !isEnable;
if (isEnable) lstTest.Enable();
else lstTest.Disable();
}
}
}
下面是 PageEx.cs:
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebAppTester
{
public abstract class PageEx : Page
相关新闻>>
- 发表评论
-
- 最新评论 更多>>