Tôi đã tạo thành công một điều khiển người dùng để hiển thị thông báo lỗi. bây giờ mọi thứ hoạt động tốt nhưng khi thông báo được hiển thị các điều khiển nền có thể được truy cập. làm thế nào để vô hiệu hóa các điều khiển trang hoặc trang từ cách nhấp hoặc chọn bất kỳ điều khiển nào. và khi bảng điều khiển được đóng, nó sẽ cho phép các điều khiển trang.Làm thế nào để vô hiệu hóa các điều khiển trong một trang ASP.NET khi usercontrol được chọn?
tôi tìm thấy bạn bè trả lời.
void DisableControls(Control parent, bool status)
{
foreach (Control c in parent.Controls)
{
if (c is DropDownList)
{
((DropDownList)(c)).Enabled = status;
}
if (c is Button)
{
((Button)(c)).Enabled = status;
}
if (c is TextBox)
{
((TextBox)c).Enabled = status;
}
if (c is RadioButton)
{
((RadioButton)c).Enabled = status;
}
if (c is ImageButton)
{
((ImageButton)c).Enabled = status;
}
if (c is CheckBox)
{
((CheckBox)c).Enabled = status;
}
if (c is DropDownList)
{
((DropDownList)c).Enabled = status;
}
if (c is HyperLink)
{
((HyperLink)c).Enabled = status;
}
if (c is GridView)
{
((GridView)c).Enabled = status;
}
if (c is Table)
{
((Table)c).Enabled = status;
}
if (c is Menu)
{
((Menu)c).Enabled = status;
}
if (c is TreeView)
{
((TreeView)c).Enabled = status;
}
}
}
khi điều khiển người dùng được kích hoạt, tôi nhận được div trong đó tôi đã thêm các điều khiển. Nhưng các điều khiển trong trang từ nơi tôi gọi cũng hoạt động. tôi muốn vô hiệu hóa các điều khiển trong trang đó. –
Tôi nghĩ rằng bạn sẽ thấy rằng bạn có thể đơn giản hóa mã của bạn * rất nhiều * bằng cách sử dụng như sau: 'foreach (Kiểm soát c trong parent.Controls) {c.Enabled = false; } 'bởi vì Enabled là thuộc tính của' Control'. – Crisfole
cảm ơn bạn đã trả lời. tôi đã cố gắng nhưng đã không thể làm điều đó thành công. nó ném một lỗi. –