Table of Contents

Namespace Material.Blazor

Classes

MBAnchor

An anchor component for snackbars, toasts and tooltips to be placed in App.razor, MainLayout.razor or Index.razor.

MBAutocompletePagedField<TItem>

An autocomplete built using an MBTextField with the anchor and drop down list implementation from a Material Theme select.

MBAutocompleteSelectField<TItem>

An autocomplete built using an MBTextField with the anchor and drop down list implementation from a Material Theme select.

MBAutocompleteTextField

An autocomplete built using an MBTextField with the anchor and drop down list implementation from a Material Theme select.

MBBadge

A plus component badge placed at the top right of the containing div, overlapping the corner, but inside margin and padding..

MBBladeComponentParameters

Parameters passed to a new blade via AddBladeAsync<TComponent, TParameters>(string, TParameters, string, string, Action<string>) must take one parameter of a class implementing this interface. That class then holds all the parameters required for the component.

MBBladeComponent<TParam>

A component added to a blade via AddBladeAsync<TComponent, TParameters>(string, TParameters, string, string, Action<string>) must implement this interface.

MBBladeSet

A blade display component. Adds blades to the right hand side of the viewport (or bock where this component is located), with blades displayed left to right in ascending order of when they were requested (newest blades to the right).

MBButton

This is a general purpose Material Theme button, with provision for standard MB styling, leading and trailing icons and all standard Blazor events. Adds the "mdc-card__action--button" class when placed inside an MBCard.

MBCard

A Material Theme card with three elements: primary, primary action buttons and action icons.

MBCarousel<TItem>

An carousel, implementing animation using an MBSlidingContent<TItem>.

MBCascadingDefaults

A class to be used as a cascading value setting defaults for your application.

MBCheckbox

This is a general purpose Material Theme check box accepting a boolean as a bound value. This check box does not implement indeteriminate state.

MBCircularProgress

This is a general purpose Material Theme circular progress bar. Can be determinant or indeterminant. If determinant the value needs to be between 0 and 1.

MBConfirmationDialog

A confirmation dialog requiring the user to type in either a generated six digit sequence or a string provided in ConfirmationPhrase. The consumer can elect to use standard "OK" and "Cancel" buttons by leaving UnconfirmedButtons and ConfirmedButtons null, in which case the "OK" button gives the dialog an action result of ConfirmActionResult, or CancelActionResult for the "Cancel" button.

Alternatively the consumer can supply render fragments with buttons to UnconfirmedButtons and ConfirmedButtons. The former is rendered until the correct confirmation text is entered into the text box at which point it is replaced with the latter. Typically these are identical save that one or more of the repeated buttons in UnconfirmedButtons is disabled, but not in ConfirmedButtons. This components throws an ArgumentException if one of these render fragments is set while the other is not.

MBDataTable<TItem>

This is a general purpose Material Theme data table.

MBDatePicker

A date picker styled to match the Material Theme date picker specification, using a modfied Material Theme select input as also applied in MBSelect<TItem>.

MBDateTimeField

A Material Theme date input field. This wraps MBTextField and normally displays the numeric value as formatted text, but switches to a pure number on being selected.

MBDebouncedTextField

A Material Theme debounced text field.

MBDialog

This is a general purpose Material Theme dialog.

MBDivider

A Material Theme divider.

MBDragAndDropList<TItem>

A list of user provided render fragments that can be re-ordered with drag and drop.

MBDrawer

This is a general purpose Material Theme drawer.

MBFileUploadButton

A material button styled wrapper for the InputFile component.

MBFileUploadDragAndDrop

A material card styled wrapper for the

InputFile
component that can load files either by drag and drop or clicking the card area
MBFloatingActionButton

This is a Material Theme FAB or floating action button, with regular, mini or extended variants, application of the "mdc-fab--exited" animated class and the choice of leading or trailing icons for the extended variant.

MBIcon

Renders icons from any of the Material Icons, Font Awesome and Open Iconic foundries. Material Icons are essential for Material.Blazor and are included by the library's CSS, while you can elect whether to include Font Awesome and Open Iconic in your app.

MBIconBearingSelectElement<T>

A list item used by MBSegmentedButtonMulti<IList<TItem>>

MBIconButton

This is a general purpose Material Theme icon button, with provision for standard MB styling, leading and trailing icons and all standard Blazor events. Adds the "mdc-card__action--icon" class when placed inside an MBCard.

MBIconButtonToggle

This is a general purpose Material Theme icon button toggle, with provision for standard MB styling, leading and trailing icons and all standard Blazor events. Adds the "mdc-card__action--icon" class when placed inside an MBCard.

MBIconHelper

A helper class for defining which foundry to use for an icon.

MBIntSlider

A Material Theme single-thumb slider.

MBLinearProgress

This is a general purpose Material Theme linear progress bar. Can be determinant or indeterminant. If determinant the value needs to be between 0 and 1.

MBListDivider

A Material Theme list divider

MBListItem

This is a general purpose Material Theme list item.

MBList<TItem>

This is a general purpose Material Theme list implementing one and two line MB web component standards. It also implements a Material.Blazor interpretation of the specification for a three line list item.

MBLoggingServiceConfiguration

Configuration for IMBLoggingService.

MBMenu

This is a general purpose Material Theme menu.

MBMenuSelectionGroup

A Material Theme menu selection group.

MBMenuSurface

This is a general purpose Material Theme menu surface.

MBNumericDecimalField

A Material Theme numeric input field. This wraps MBTextField and normally displays the numeric value as formatted text, but switches to a pure number on being selected.

MBNumericDoubleField

An double variant of MBNumericDecimalField.

MBNumericIntField

An integer variant of MBNumericDecimalField.

MBPagedDataList<TItem>

A paged data list using the "wig pig" construct allowing the consumer to free render the relevant paged data.

MBPagedSearchResult<TItem>

The results of a search calling GetMatchingSelection. Both parameters must be set to enable the autocomplete to know if there is an overflow condition due to too many items being returned, an exact match or no items were found.

MBPaginator
MBPopover

Similar to MBMenuSurface in functionality, but with lazy rendering and late instantiation of layout children as per MBDialog.

MBRadioButtonGroup<TItem>

A group of MBRadioButton<TItem>s displayed horizontally or vertically.

MBRadioButton<TItem>

This is a general purpose Material Theme radio button. Accepts a generic class TItem and displays as checked if Value equals TargetCheckedValue.

MBSearchResult<TItem>

The results of a search calling GetMatchingSelection. Both parameters must be set to enable the autocomplete to know if there is an overflow condition due to too many items being returned, an exact match or no items were found.

MBSegmentedButtonMulti<TItem>

A Material Theme segmented button orientated as a multi-select.

MBSegmentedButtonSingle<TItem>

A Material Theme segmented button orientated as a single-select.

MBSelectElement<T>

A list item used by MBSelect<TItem>, MBRadioButtonGroup<TItem> and MBPagedDataList<TItem>

MBSelect<TItem>

A Material Theme select.

MBServicesOptions

Options for AddMBServices(IServiceCollection) following the ASP.Net Options Pattern.

MBShield

A shield similar to those from shield.io and used in GitHub. Implemented with HTML rather than SVG.

MBSlider

A Material Theme single-thumb slider.

MBSlidingContent<TItem>

A Plus component that take a set of renderfragments in a list and transitions from one to another with slight sideways motion and fade, or "sliding". Only renders the currently displayed item.

MBSlidingTabBar<TItem>

An MBTabBar<TItem> with a MBSlidingContent<TItem> immediately beneath showing tabbed content.

MBSnackbarServiceConfiguration

Configuration for IMBSnackbarService.

MBSnackbarSettings

Settings for an individual snackbar notification determining all aspects controlling it's markup and behaviour. All parameters are optional with defaults defined in the MBSnackbarServiceConfiguration that you define when creating the snackbar service.

MBSwitch

This is a general purpose Material Theme switch.

MBTabBar<TItem>

This is a general purpose Material Theme tab bar.

MBTextArea

A Material Theme text field.

MBTextField

A Material Theme text field.

MBToastServiceConfiguration

Configuration for IMBToastService.

MBToastSettings

Settings for an individual toast notification determining all aspects controlling it's markup and behaviour. All parameters are optional with defaults defined in the MBToastServiceConfiguration that you define when creating the toast service.

MBTooltip
MBTopAppBar

A Material Theme top app bar

MBTouchTargetWrapper

Optionally applies a <div> element with class 'mdc-touch-target-wrapper' around the child content.

MBVersion
ServiceCollectionExtensions
_Imports

Interfaces

IMBIcon

Interface providing markup elements for an icon in a given foundry.

IMBIconFoundry

An interface for supplying icon foundry information to components.

IMBLoggingService

Interface for the Material.Blazor logging level service

IMBSnackbarService

Interface for the Material.Blazor snackbar service, developed from the code base of Blazored Snackbar by Chris Sainty. Works in conjunction with a MBAnchor that must be placed in either App.razor or MainLayout.razor to avoid an exception being thrown when you first attempt to show a snackbar notification.

Throws a InvalidOperationException if ShowSnackbar(string, Action, string, string, MBNotifierCloseMethod?, bool, bool, int?, bool) is called without an MBAnchor component used in the app.

You can optionally add configuration when you add this to the service collection:

services.AddMBServices(snackbarServiceConfiguration: new MBSnackbarServiceConfiguration()
                                                                                                     {
                                                                                                         Timeout = 4000,
                                                                                                         CloseMethod = MBSnackbarCloseMethod.Timeout,
                                                                                                         ... etc
                                                                                                     });
IMBToastService

Interface for the Material.Blazor toast service, developed from the code base of Blazored Toast by Chris Sainty. Works in conjunction with a MBAnchor that must be placed in either App.razor or MainLayout.razor to avoid an exception being thrown when you first attempt to show a toast notification.

Throws a InvalidOperationException if ShowToast(MBToastLevel, string, string, MBNotifierCloseMethod?, string, string, IMBIconFoundry?, bool?, uint?, bool) is called without an MBAnchor component used in the app.

You can optionally add configuration when you add this to the service collection:

services.AddMBServices(toastServiceConfiguration: new MBToastServiceConfiguration()
                                                                                                     {
                                                                                                         Postion = MBToastPosition.TopRight,
                                                                                                         CloseMethod = MBToastCloseMethod.Timeout,
                                                                                                         ... etc
                                                                                                     });
IMBTooltipService

Interface for the Material.Blazor tooltip service, developed from the code base of Blazored Toast by Chris Sainty. Works in conjunction with a MBAnchor that must be placed in either App.razor or MainLayout.razor to avoid an exception being thrown when you first attempt to show a tooltip notification.

Throws a InvalidOperationException if AddTooltip(long, RenderFragment) is called without an MBAnchor component used in the app.

Enums

MBBadgeStyle

Style for an MBBadge.

MBButtonStyle

Style for an MBButton per Material Theme styling.

MBCascadingDefaults has a default of Text

MBCardStyle

Style for an MBCard per Material Theme styling.

MBCascadingDefaults has a default of Default

MBCircularProgressSize

Size for an MBCircularProgress.

MBCircularProgressType

Type for an MBCircularProgress.

MBDateSelectionCriteria

Determines the allowed selections in MBDatePicker

MBCascadingDefaults has a default of AllowAll

MBDensity

Determines the density of a component

Defaults to Default

MBFloatingActionButtonType

Type for an MBFloatingActionButton.

MBIconFARelativeSize

Sets the Font Awesome relative size.

See FAFoundry(MBIconFAStyle?, MBIconFARelativeSize?), Icon_FA and IconFoundryFA

MBCascadingDefaults has a default of Regular

MBIconFAStyle

Sets the Font Awesome style.

See FAFoundry(MBIconFAStyle?, MBIconFARelativeSize?), Icon_FA and IconFoundryFA

MBCascadingDefaults has a default of Solid (all other styles except Brands require a paid-for Font Awesome PRO licence)

MBIconFoundryName

Specifies whether to use Material Icons from Google Material Symbols from Google Font Awesome Icons Open Iconic Icons

See MBIconHelper

MBCascadingDefaults has a default of MaterialIcons

MBIconMITheme

Sets the Google Material Icons theme.

See MIFoundry(MBIconMITheme?), Icon_MI and IconFoundryMI

MBCascadingDefaults has a default of Filled

MBIconMSGradient
MBIconMSSize
MBIconMSStyle
MBIconMSWeight
MBInputEventType

Determines how an MBSlider responds to user events.

MBItemValidation

A helper to determine how a MBSelect<TItem> or MBRadioButtonGroup<TItem> should handle an intial bound value not matching elements in the value list.

MBCascadingDefaults has a default of Exception

MBLinearProgressType

Type for an MBLinearProgress.

MBListStyle

Style for an MBList<TItem>. The Outlined variety borrows card markup matching Outlined.

MBCascadingDefaults has a default of None

MBListType

Type for an MBList<TItem>.

MBCascadingDefaults has a default of Regular

MBLoggingLevel

Type for the level of logging performed by M.B They follow the Microsoft.Logging.LogLevel definition

MBMenuSurfacePositioning

Determines the positioning and width of a menu surface.

MBNotifierCloseMethod

Determines whether a snackbar or a toast notfication times out and whether it has a dismiss button.

Defaults to TimeoutAndDismissButton

MBNumericInputMagnitude

A helper to determine the magnitude adjustment when displaying or editing values using numeric input fields.

MBSearchResultTypes

Describes the result of a search from the MBAutocompleteSelectField<TItem> component.

MBSelectInputStyle

Material Theme select input style applied to MBSelect<TItem>.

Applied also to MBDatePicker

MBCascadingDefaults has a default of Filled

MBShieldType

Determines whether a MBShield displays the label (left hand element), value (right hand element) or both.

Defaults to LabelAndValue

MBSliderType

Determines the type of an MBSlider.

MBTextAlignStyle

A helper to set the alignment of text in MBTextField, MBTextArea and MBSelect<TItem>.

Applied also to MBAutocompleteTextField, MBDebouncedTextField, MBNumericDoubleField and MBNumericIntField

MBCascadingDefaults has a default of Default

MBTextInputStyle

Material Theme text field and text area input style applied to MBTextField and MBTextArea.

Applied also to MBAutocompleteTextField, MBDebouncedTextField, MBNumericDoubleField and MBNumericIntField

MBCascadingDefaults has a default of Filled

MBToastLevel

Determines the type of a toast notfication. This is a required toast parameter without defaults.

MBToastPosition

Determines where toasts are positioned.

Defaults to BottomRight

MBTopAppBarType

Material Theme top app bar type applied to an MBTopAppBar.

Delegates

IMBIcon.IconFragment

A delegate that applies user-defined class, style, and other attributes to the icon.