Hierbij liep ik tegen 2 problemen aan:
- Middels de standaard methode FindControl op het WizardControl object kan de betreffende LinkButton niet gevonden worden. Hiervoor het ik zelf een FindControl methode gemaakt, welke hieronder is bijgevoegd
- Het aanpassen van de eigenschap [LinkButton].Visible naar False blijkt niet te werken. Waarschijnlijk negeert het WizardControl deze eigenscap in de eigen Render methode. In plaats van de Visible eigenschap kan je de Style eigenschap gebruiken:
[LinkButton].Style["display"] = "none";
De code behorende bij punt 1 (deze methode zoek recursief, binnen een container control, naar het control met het betreffence ID):
public static Control FindControl(string controlID, Control container)
{
foreach (Control ctrl in container.Controls)
{
if (ctrl.ID != null && ctrl.ID.Equals(controlID))
return ctrl;
if (ctrl.HasControls())
{
Control c = FindControl(controlID, ctrl);
if (c != null) return c;
}
}
return null;
}
Een voorbeeld van het verbergen van de Next link op de eerste Wizard Step:
WebControl = FindControl("StartNextLinkButton", this.wizardControl1) as WebControl;
nextLink.Style["display"] = "none";
nextLink.Style["display"] = "none";
Bronnen: Microsoft MSDN