Ich habe eine Masterseite, dort gibt es nur ein Menüelement und einen ContentPlaceholder. Ich habe ein anderes Webformular, das diese Masterseite erbt. Wie immer habe ich alle meine Kontrollen in den contentplaceholder gesetzt. Auf dem Formular__Load-Ereignis möchte ich Enabled = false aller Dropdown-Listensteuerelemente festlegen. Zu diesem Zweck schreibe ich:ASP.NET - Zugriff auf die Steuerelemente in untergeordneten Seite
foreach (Control control in Page.Controls)
{
if (control is DropDownList)
{
DropDownList ddl = (DropDownList)control;
ddl.Enabled = false;
}
}
Aber alle Dropdown-Listen bleiben aktiviert. Wenn ich nach der Anzahl der Page.Control suche, sehe ich nur ein Steuerelement und es ist der Menüeintrag der Masterpage des Formulars. Was muss ich tun, um die Liste der Steuerelemente in meiner aktuellen Form zu erhalten?
Und wie bekomme ich die Inhaltskontrolle? Wenn es Inhalt Inhalt ist = (Inhalt) Page.FindControl ("ContentMain"); dann gibt dies null zurück. –
Sie können es nicht mit seinem Namen nennen? Wenn es ContentMain heißt, wäre das ContentMain.Controls – Eugene
, aber wenn ich ContentMain eintippe, wird es nicht im IntelliSense-Menü angezeigt. –