Button

Der ButtonBuilder (Fmh.Button()) erzeugt Schaltflächen und Links über ein einheitliches Fluent-API. Aufruf immer über @Html.Fmh(Fmh.Button()...).

Hinweis: Bei .Action(...) aus einer Area heraus auf einen Controller ausserhalb der Area (wie hier HomeController) muss area = "" explizit in den Routenwerten gesetzt werden, sonst wird die Zielroute nicht gefunden.

Button Async

Für asynchrone Aktionen stehen jQuery-Statusfunktionen zur Verfügung, die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten.

@Html.Fmh(Fmh.Button()
    .Text("Ausfüllen")
    .Attributes(new { id = "btnAsyncDemo" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Button Primär mit Icon rechts und Attributen (Typ Submit)

Icon rechts statt links vom Text platziert.

@Html.Fmh(Fmh.Button()
    .Icon(IconType.Send)
    .IconPosition(ButtonIconPosition.Right)
    .Text("Absenden")
    .Color(ButtonColor.Primary)
    .Attributes(new { id = "btnIconRechts", @class = "ms-3" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Button Primär mit Icon und Attributen (Typ Button)

Typ Button statt Submit — löst kein Formular aus, für rein clientseitige Aktionen.

@Html.Fmh(Fmh.Button()
    .Icon(IconType.Add)
    .Text("Hinzufügen")
    .Type(ButtonType.Button)
    .Color(ButtonColor.Primary)
    .Attributes(new { id = "btnHinzufuegen", @class = "ms-3" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Button Primär mit Icon und Attributen (Typ Submit)

Primärer Submit-Button mit Icon und zusätzlichen HTML-Attributen.

@Html.Fmh(Fmh.Button()
    .Icon(IconType.Send)
    .Text("Absenden")
    .Color(ButtonColor.Primary)
    .Attributes(new { id = "btnPrimaerIcon", @class = "ms-3" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Button Primär (Typ Submit)

Primärer Button vom Typ Submit ohne weitere Optionen.

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Color(ButtonColor.Primary))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Button Sekundär mit Icon und Attributen (Typ Submit)

Wie "Button Primär mit Icon und Attributen (Typ Submit)", aber mit der Farbe Secondary.

@Html.Fmh(Fmh.Button()
    .Icon(IconType.Send)
    .Text("Absenden")
    .Color(ButtonColor.Secondary)
    .Attributes(new { id = "btnSekundaerIcon", @class = "ms-3" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Button Success als Link

Als Link gerendert, Ziel über .Action(...) auf eine MVC-Action.

@Html.Fmh(Fmh.Button()
    .Text("Neues Produkt")
    .Icon(IconType.NewReleases)
    .Type(ButtonType.Link)
    .Action("Index", "Home", new { id = 5, area = "" })
    .Color(ButtonColor.Success)
    .Attributes(new { id = "btnNeuesProdukt" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Button Success als Link (Icon rechts)

Wie "Button Success als Link", aber mit Icon rechts.

@Html.Fmh(Fmh.Button()
    .Text("Neues Produkt")
    .Icon(IconType.NewReleases)
    .IconPosition(ButtonIconPosition.Right)
    .Type(ButtonType.Link)
    .Action("Index", "Home", new { id = 5, area = "" })
    .Color(ButtonColor.Success)
    .Attributes(new { id = "btnNeuesProduktRechts" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Button Success als Link mit externem Link und Target

Als Link auf eine externe URL, öffnet in neuem Tab (target="_blank").

@Html.Fmh(Fmh.Button()
    .Text("Unterstützung anfordern")
    .Icon(IconType.PowerInput)
    .Type(ButtonType.Link)
    .Url("https://www.databinding.net")
    .Color(ButtonColor.Success)
    .Attributes(new { id = "btnUnterstuetzung", target = "_blank" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Einfacher Link

Link ohne Button-Optik (Typ SimpleLink).

Darstellung

Icon Button

Reiner Icon-Button ohne sichtbaren Text (Text wird als Tooltip verwendet).

@Html.Fmh(Fmh.Button()
    .Text("Bearbeiten")
    .Type(ButtonType.IconButton)
    .Icon(IconType.Edit)
    .Attributes(new { id = "btnBearbeiten" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Toggle Button

Icon-Button mit zwei Zuständen (an/aus) für Toggle-Interaktionen.

@Html.Fmh(Fmh.Button()
    .Text("Sichtbarkeit")
    .Type(ButtonType.IconButton)
    .Icon(IconType.Visibility, IconType.VisibilityOff)
    .Attributes(new { id = "btnSichtbarkeit" }))

Darstellung

Der ButtonBuilder wird über Fmh.Button() erzeugt und mit @Html.Fmh(...) gerendert. Die Methoden sind ein Fluent-API und lassen sich frei verketten:

@Html.Fmh(Fmh.Button()
    .Text("Absenden")
    .Icon(IconType.Send)
    .Color(ButtonColor.Primary))

Standardwerte ohne weitere Angabe: Typ Submit, Farbe Primary, Grösse Default, Icon links vom Text.

Inhalt & Erscheinungsbild

Methode Erklärung
.Text("…") Beschriftung des Buttons; bei Icon-Buttons wird der Text als Tooltip verwendet
.Icon(IconType icon, IconType? iconOff = null) Icon (Material-Symbol); der zweite Wert ist der Aus-Zustand eines Toggle-Buttons
.IconPosition(ButtonIconPosition.Left \| Right) Position des Icons relativ zum Text (Standard: links)
.Color(ButtonColor.…) Farbe: Primary, Secondary, Success, Info, Warning, Danger, Light, Dark, Link
.Outline() Outline-Variante statt gefüllter Fläche
.Size(ButtonSize.Lg \| Default \| Sm) Grösse des Buttons

Typ & Verhalten

Methode Erklärung
.Type(ButtonType.…) Submit (Standard, sendet das Formular), Button (clientseitige Aktion), Reset, Link/SimpleLink (als <a>), IconButton (reiner Icon-Button), DeleteForm
.Disabled(bool = true, string title = "") Deaktiviert den Button, optional mit Tooltip
.Visible(bool = true) Blendet den Button aus, wenn false
.ActivateToggle(string statusProperty, bool isActivated = true) Macht einen Icon-Button zum Toggle mit An/Aus-Zustand
.CloseDialogOnClick(bool = true) Schliesst einen Dialog beim Klick (data-bs-dismiss="modal")
.ClientSideValidationDisabled(bool = true) Überspringt die clientseitige Validierung (formnovalidate)
Methode Erklärung
.Action("Action", "Controller", new { area = "" }) Ziel als MVC-Action; aus einer Area heraus auf einen Controller ausserhalb der Area area = "" setzen
.Url("https://…") Ziel als absolute oder relative URL

HTML & IDs

Methode Erklärung
.Id("…") Setzt die HTML-id des Buttons
.Attributes(new { id = "…", @class = "ms-3", target = "_blank" }) Beliebige zusätzliche HTML-Attribute; wird ohne explizite id automatisch eine generiert

Für asynchrone Aktionen stehen zusätzlich jQuery-Statusfunktionen bereit (fmhBtnAsyncBusy, fmhBtnAsyncSuccess, …), die den Button zwischen Lade-, Erfolgs- und Fehlerzustand umschalten — siehe Beispiel «Button Async».

Status-Varianten (jQuery)

Die Status-Funktionen stammen aus jquery-fmh-sitesetup.js, das über die Basis-BodyIncludes als /bundle/fmh-sitesetup.js geladen wird. Die Links unten schalten den Button #btnAsyncDemo zwischen Lade-, Erfolgs- und Fehlerzustand um.

Hinweis: Mit Content Security Policy auf onclick/onchange-Attribute verzichten, stattdessen jQuery oder addEventListener verwenden.