The wizard steps are binded into the DataList dl, so you can add an handler to dl :
protected override void OnInit(EventArgs e)
{
w.ID = "w";
ws1.ID = "ws1";
ws2.ID = "ws2";
ws3.ID = "ws3";
ws4.ID = "ws4";
ws1.Title = "Select a client";
ws1.StepType = WizardStepType.Start;
ws2.Title = "Select a project";
ws3.Title = "Select a bot type";
ws4.Title = "Configure the new task";
ws4.StepType = WizardStepType.Finish;
DataList dl= (DataList)w.FindControl("SideBarContainer").FindControl("SideBarList");
dl.ItemDataBound += w_ItemDataBound;
}
void w_ItemDataBound(object sender, DataListItemEventArgs e)
{
LinkButton lb = e.Item.FindControl("SideBarButton") as LinkButton;
if (lb != null)
{
lb.Enabled = false;
}
}
This will leave the sidebar visible, with links highlighted to the corresponding step without being clickable. Only the buttons will be available to navigate then.