Der Web Report Designer verfügt über ein umfangreiches Menü mit diversen Aktionen. Es können z.B. neue Projekte angelegt, bestehende Projekte geöffnet oder auch unter anderem Namen abgespeichert werden:
Falls nun aber im Web Report Designer nicht alle Funktionen zur Verfügung stehen sollen, können diese auch eingeschränkt werden. Hierzu kann im abgeleiteten Controller für den Web Report Designer die Funktion OnProvideProhibitedActions()
überschrieben werden. Dort kann über den Member ProhibitedActions
des übergebenen provideProhibitedActionsContext
bestimmt werden, welche Aktionen entfernt werden sollen. Füge diese einfach über die Add()
-Funktion hinzu:
...
public override void OnProvideProhibitedActions(
ProvideProhibitedActionsContext provideProhibitedActionsContext)
{
foreach (WebReportDesignerAction action in
DefaultSettings.GetProhibitedActions())
{
provideProhibitedActionsContext.ProhibitedActions.Add(action);
}
}
...
Die GetProhibitedActions
Methode könnte dabei so aussehen:
...
public static WebReportDesignerAction[] GetProhibitedActions()
{
return new WebReportDesignerAction[]
{
WebReportDesignerAction.CreateNewProject
};
}
...
Als Ergebnis wird nun eine entsprechende Meldung in der Oberfläche für den Anwender angezeigt:
Weitere einzuschränkende Aktionen können in der Auflistung WebReportDesignerAction
eingesehen werden.
Die Methode Add()
besitzt noch einen zusätzlichen optionalen bool-Parameter displayInFrontEnd
über den bestimmt werden kann, dass die betreffende Schaltfläche für die einzuschränkende Aktion vollständig aus der Oberfläche entfernt wird. Beispiel:
...
provideProhibitedActionsContext.ProhibitedActions.Add(
WebReportDesignerAction.CreateNewProject, false);
...
Bei dieser Vorgehensweise ist die “Neu”-Schaltfläche dann nicht mehr vorhanden: