• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

SamProf/MatBlazor: Material Design components for Blazor and Razor Components

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

SamProf/MatBlazor

开源软件地址(OpenSource Url):

https://github.com/SamProf/MatBlazor

开源编程语言(OpenSource Language):

HTML 55.8%

开源软件介绍(OpenSource Introduction):

MatBlazor MatBlazor

Material Design components for Blazor and Razor Components

NuGet Gitter GitHub Stars GitHub Issues Live Demo MIT Donate Patreon

MatBlazor comprises a range of components which implement common interaction patterns according to the Material Design specification.

Demo and Documentation

Prerequisites

Don't know what Blazor is? Read here

Complete all Blazor dependencies.

  • .NET Core 3.1
  • Visual Studio 2019 with the ASP.NET and web development workload selected.
  • Requires access to internet for CSS download

Installation

Latest version in here: NuGet

To Install

Install-Package MatBlazor

or

dotnet add package MatBlazor

For client-side and server-side Blazor - add script section to index.html or _Host.cshtml (head section)

<script src="_content/MatBlazor/dist/matBlazor.js"></script>
<link href="_content/MatBlazor/dist/matBlazor.css" rel="stylesheet" />

Usage

MatBlazor Buttons Example

<MatButton OnClick="@Click">Text @ButtonState</MatButton>
<MatButton Raised="true">Raised</MatButton>
<MatButton Unelevated="true">Unelevated</MatButton>
<MatButton Outlined="true">Outlined</MatButton>
<MatButton Dense="true">Dense</MatButton> 

@code
{
  string ButtonState = "";
  void Click(UIMouseEventArgs e)
  {
    ButtonState = "Clicked";
  }
} 

Sponsors & Backers

MatBlazor does not run under the umbrella of any company or anything like that. It is an independent project created in spare time. The development is active and we are working hard to release great things for you.

If you think that this project helped you or your company in any way, you can consider becoming a backer/sponsor.

Sponsors:

  • Phil Parkin
  • Patreon: Luiz Sampaio
  • Patreon: Eric Vander Wal
  • Patreon: Czeysy Pataro
  • Patreon: Rene Zaal
  • Patreon: Lachlan Gordon
  • Patreon: Stas Levich
  • Patreon: Jay Arrowz

Backers:

Contributing

We'd greatly appreciate any contribution you make. :) Also we have official Contributors team:

Contributing Tips

  • Submit all PR's against the 'develop' branch. This is where all PR's are tested by collaborators before being reviewed and merged into the 'master' branch.
  • Please do not include the compiled .js / .css in your PR's. These are autogenerated during builds and get rewritten.
  • For PR's with UI updates please take a few minutes to review the Demo component for the changes and add the new functionality in Demo for the component you are editing. Not only will this allow for easier testing / merging of your PR it will give others an opportunity to see the capabilities of MatBlazor.

News

Roadmap

  • MatVirtualScroll - complete new component
  • MatDataTable - complete new component
  • MatDatePicker - improvements
  • MatTreeView - complete new component
  • MatAutocomplete - new implementation of component

MatBlazor 2.9.0 (develop)

  • Supports net5.0;netstandard2.1
  • PR: MatTreeView - new component #788 (Thanks to adameste)
  • PR: Fix MatAutocompleteList re-render list on items update #857 (Thanks to Ogglas)
  • PR: Remove duplicate Id for MatSlideToggle #848 (Thanks to Lucidize)
  • PR: Delete launchSettings.json #831 (Thanks to stefanloerwald)
  • PR: Specify a GroupName for MatRadioGroup #823 (Thanks to PeteJobi)
  • PR: Double Navigation Fix #823 (Thanks to PeteJobi)
  • PR: Remove MatBlazor.TestApp.ServerApp #809 (Thanks to Christian-Oleson)
  • PR: SurfaceColor for text field component #815 (Thanks to InRedikaWB)
  • PR: Avoid async void for UI events #808 (Thanks to Christian-Oleson)
  • PR: MatToast documentation #807 (Thanks to Christian-Oleson)
  • PR: MatToast - Include method overload to call toast without title #806 (Thanks to Christian-Oleson)
  • PR: Cleanup the MatTable Code #805 (Thanks to Christian-Oleson)
  • PR: Cleanup console.log's #804 (Thanks to Christian-Oleson)
  • PR: MatSelect - avoid calling OnValueChanged method if it does not change #795 (Thanks to damianog)
  • PR: Enabling PageSize and CurrentPage to be bound to on MatTable #794 (Thanks to naretto)
  • PR: Fix Tooltip left #784 (Thanks to danikf)
  • PR: NavItem OnClick was ignored #776 (Thanks to Bimble)

MatBlazor 2.8.0

  • Add new ForwardRefContext component (SamProf)
  • Add new MatDialogService and MatPortalService (SamProf)
  • PR: Add new MatProgressCircle component #752 (Thanks to louisfischer)
  • PR: Add new MatPaper component #707 (Thanks to EduVencovsky)
  • PR: Add new MatButtonLink #745 (Thanks to PeteJobi)
  • PR: MatDatePicker Localized feature #715 (Thanks to ummerland)
  • PR: TextField Label should be transparent as Default #704 (Thanks to enkodellc)-
  • PR: Enable MatSlider values update from code-behind #725 (Thanks to MarosValter)
  • PR: Bugfix - Task canceled exception #737 (Thanks to Christian-Oleson)
  • PR: Update MatBlazor Packages #738 (Thanks to Christian-Oleson)
  • PR: Cleanup usings, errors, warnings, etc. #739 (Thanks to Christian-Oleson)
  • PR: MatAccordion cleanup code and removed redundant base class #761 (Thanks to damianog)
  • PR: Fixes MatChip TrailingIconClick #750 (Thanks to kylepope-ge)
  • PR: Code cleanup #762 (Thanks to damianog)
  • PR: Snap NumericUpDown to min/max values on string parse. #764 (Thanks to adameste)

MatBlazor 2.7.0

  • Update MDC Web to 7.0.0 (SamProf)
  • Changed DOM and JS for many components, because of changes in MDC Web 7.0.0 (SamProf)
  • Fixed: Floating label in Outlined MatTextField-based components (SamProf)
  • Fixed Validation via EditContext colors (SamProf)
  • PR: Add Width property for Drawer #666 (Thanks to redradist)
  • PR: MatSelect: FullWidth parameter #670 (Thanks to stefanloerwald)
  • PR: Cleanup #673 (Thanks to stefanloerwald)
  • PR: Table Re-Rendering Fix #692 (Thanks to erlendp)
  • PR: Custom Drawer Width Demo. Readme contribution updates #701
  • PR: Fix part of issue with FullWidth MatTextField and Placeholder #677 (Thanks to stefanloerwald)
  • PR: Responsive menu on Demo page, icons change to menu on smaller screens. #684 (Thanks to PA4WD)
  • PR: Spaces in folder name's break DemoContentGenerator.Generate() #685 (Thanks to PA4WD)
  • PR: Some language improvements #686 (Thanks to PA4WD)
  • PR: Fixes #619 Validation styles for outlined Text fields #702 (Thanks to enkodellc)
  • PR: Remove event on Dispose instead of adding one #703 (Thanks to LeoVen)

MatBlazor 2.6.3

  • PR: Simplify deploying js/css #657 (Thanks to stefanloerwald)
  • PR: Update README.md (Mentioned that internet access is required in Prerequisites) #610 (Thanks to rokx)
  • PR: Checkbox indeterminate state fixes #664 (Thanks to lindespang)
  • PR: MatSlider Immediate #665 (Thanks to stefanloerwald)

MatBlazor 2.6.2

  • PR: Update Slider to Add Pin & Markers #639 (Thanks to enkodellc)
  • PR: MatTable double click #629 (Thanks to sebestyn168)
  • PR: Fix MatAutocomplete fails with tab and google autofill #614 (Thanks to sebestyn168)
  • PR: Update MatSlider for Pin and Markers (Thanks to enkodellc)
  • PR: MatSelect - Adding support for GUID / GUID? #634 (Thanks to softwaretirol)
  • PR: Toast theme fixes, fixes #604 #612 (Thanks to lindespang)
  • PR: Added issue template for feature request and question, updated bug te… #608 (Thanks to SeppPenner)
  • PR: Added mouse over texts for MatNavMenu components, adjusted examples. #606 (Thanks to SeppPenner)
  • PR: MatBlazor.com redesign #603 (Thanks to lindespang)
  • PR: MatChip / MatChipSet: implemented exclusive and non-exclusive selection #601 (Thanks to henon)
  • PR: Bugfix for pagecounter in MatTable #561 (Thanks to lindespang)
  • PR: Fix typo in MatSelect demos #563 (Thanks to lindespang)
  • PR: Bugfix/fix doc spelling errors #565 (Thanks to CSOleson)
  • PR: MatSnackbar - Timeout parameter and Updated documentation #596 and #600 (Thanks to henon)
  • PR: Add more specific css selector for transforming the floating label #599 (Thanks to dbereghici)
  • PR: MatHelperText Created #569 (Thanks to EduVencovsky)
  • PR: Added ForceLoad option for MatButton and MatIconButton (Fixes #330) #570 (Thanks to Garderoben and enkodellc)
  • PR: Added LazyRendering for MatExpansionPanel + bug fix #578 (Thanks to lindespang)

MatBlazor 2.6.0

  • Update to Latest Microsoft.AspNetCore.Components 3.1.4 and Microsoft.AspNetCore.Components.WebAssembly 3.2.0
  • Update MDC-Web components to 6.0.0
  • MDC 6.0.0 updates for TextField #538 (Thanks to enkodellc)
  • Target for MatButton / MatIconButton #539 (Thanks to enkodellc)
  • PR: Fixed multiple Autocomplete Issues #548 (Thanks to sandrohanea)
  • PR: Can't select item in MatAutocompleteList #546 (Thanks to sandrohanea)
  • Fix MatMenu AnchorElement bug
  • Fix MatTextField inside Dialog
  • PR: Added Primary Color to MatSelect Label #522 (Thanks to EduVencovsky)
  • PR: Added documentation for SlideToggle value changed event. #530 (Thanks to SeppPenner)

MatBlazor 2.4.3

  • MatVirtualScroll - New component-
  • Added label color to theme primary color #488 (Thanks to EduVencovsky)
  • Correct padding for MatTextField with leading icon #483 (Thanks to EduVencovsky)
  • PR: Added, return item object from selected row event. #511 (Thanks to UrizielTSD)
  • PR: Added ability to close MatMenu programmatically. #504 (Thanks to IKingJohnI)
  • PR: Use height instead of max-height in mat-expansion-panel base/expanded #484 (Thanks to esso23)
  • PR: Remove node-sass and add temporary workaround for sass-loader. #481 (Thanks to esso23)

MatBlazor 2.3.0

  • PR: Add implementations for nullable primitive types: sbyte?, byte?, short?, ushort?, int?, uint?, long?, ulong?, char?, float?, double? #449 (Thanks to fire-birdie)
  • MatNumericUpDownField - Added FieldType parameter with Numeric, Currency, and Percent types #462 (Thanks to RonPeters)
  • PR: MatDatePicker - Do not display the time in the text field by default. Respect the Format and EnableTime parameters. #462 (Thanks to RonPeters)
  • PR: MatDatePicker - Fixed Minimum and Maximum implementation by comparing only dates if EnableTime is false, and comparing dates and times if EnableTime is true #462 (Thanks to RonPeters)
  • PR: Added ability to hide toggle button in MatAccordion / MatExpansionpanel #446 (Thanks to lindespang)
  • PR: Add Parameter to MatNavItem to allow user to set the NavLinkMatch #456 (Thanks to enkodellc)
  • PR: Add Id and Attributes to MatSelect #454 (Thanks to hailstorm75)
  • PR: MatIconButton - Added OnClickStopPropagation #462 (Thanks to RonPeters)
  • PR: MatButton - Added OnClickStopPropagation #462 (Thanks to RonPeters)
  • PR: MatDatePicker - Fixed the labeling of the DisableMobile Demo #462 (Thanks to RonPeters)
  • PR: ToolTip Fix #450 (Thanks to EduVencovsky)
  • PR: package.json - Fixed invalid structure and updated some packages to address some of the vulnerabilities identified in audit #462 (Thanks to RonPeters)

MatBlazor 2.2.0

  • .NET Core 3.1.2 + .NET Core 3.2.0-Preview 1 Releases
  • MatSortHeader, MatSortHeaderRow - New component
  • Fix: MatDatePicker always display's current month/year #431

MatBlazor 2.1.2

  • MatPaginator - New component
  • Fix: Impelement custom hoistMenuToBody for MatSelect and MatMenu - fix #415
  • Fix: Ripple effect for MatButton

MatBlazor 2.1.1

  • MatSelect, MatSelectItem, MatSelectValue components supports EditContext
  • ValidationDisabled parameter added to input components
  • PR: Update MatBlazor Demo Menu #414 (Thanks to americanslon)
  • PR: Updated prerequisites #413 (Thanks to NPadrutt)

MatBlazor 2.1.0

  • Breaking changes - Upgrade an existing project

    • Add <link href="_content/MatBlazor/dist/matBlazor.css" rel="stylesheet" /> to html code
    • Update to .NET Core 3.2 Preview 1 libraries
  • PR: Update to .NET Core 3.2 Preview 1 #409 (Thanks to enkodellc)

  • PR: Separation of CSS and JS resources #408 (Thanks to RonPeters)

  • MatSelectItem<TValue>

    • Populate options using Items collections and optional ItemTemplate
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supports Blazor validation using EditContext
    • Supported types: any
  • MatSelectValue<TItem, TValue>

    • Populate options using Items collections and optional ItemTemplate using ValueSelector
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supports Blazor validation using EditContext
    • Supported types: any
  • MatFileUpload - progress bar added, improoved performance

MatBlazor 2.0.5

  • MatFileUpload - inital version of component
  • Implemented: Add possibility of initial state of MatIconButton #401. Implemented Toggled parameter and ToggledChanged.
  • Fixed: Small bug with numeric up/down field #402. Overflow in numeric values.

MatBlazor 2.0.1

  • MatSelect was rewrited and prepared for MatSelectItem and MatSelectValue, supported only Enhanced mode, Disabled for MatOption is temporary not working
  • PR: Added MatTreeView #360 (Thanks to sprotty)
  • PR: Filtering on multiple columns #384 (Thanks to VDSYannick)
  • PR: Fix #393, Fix #319, MatNavItem still clickable when disabled=true. Add OnClick to MatNavItem #394 (Thanks to enkodellc)
  • PR: Prevent circular overflow on MatNumericUpDownField #378 (Thanks to sebestyn168)
  • PR: Added @key attribute to MatTable table row #361 (Thanks to plebnz)
  • PR: added @key attribute to MatTab content #395 (Thanks to chris1411)
  • PR: Matlist selectedIndex default value set to -1 #354 (Thanks to radutomy)

MatBlazor 2.0.0 (Reinvention MatBlazor Forms)

  • This release contain a lot of breaking changes, sorry for that.
  • The main goal of this release was to unify all components for forms, generic type support, reduction of dependence of JS, active use of OOP and the possibility of more active expansion in the future.
  • Update to .NET Core 3.1 Preview 4
  • MatAutocomplete
    • MatAutocomplete renamed to MatAutocompleteList
    • ItemType renamed to TItem
    • Collection renamed to Items
    • new MatAutocomplete component will be in 2.1.0
  • MatCheckbox
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supported types: bool, bool?
    • Indeterminate mode
    • Supports Blazor validation using EditContext
    • Checked renamed to Value
    • CheckedChanged renamed to ValueChanged
    • Unmatched Attributes is appended to main component HtmlElement (not InputElement). Use InputAttributes instead.
  • MatDatePicker
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supported types: DateTime, DateTime?
    • Supports Blazor validation using EditContext
    • DateFormat renamed to Format, and this is full .NET formatting of DateTime
    • Minimum, Maximum paramneteres added
    • NoCalendar renamed to DisableCalendar
    • AltFormat, AltInputClass, Inline removed
  • MatNumericUpDownField
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supported types: sbyte, byte, short, ushort, int, uint, long, ulong, char, float, double, decimal, decimal?
    • Supports Blazor validation using EditContext
  • MatRadioButton
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supported types: any
    • Supports Blazor validation using EditContext
  • MatSelect
    • Populate options using MatOption component manually
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supports Blazor validation using EditContext
    • Supported types: string, sbyte, byte, short, ushort, int, uint, long, ulong, char, float, double, decimal, decimal?, DateTime, DateTime?, bool, bool?
    • For string values - MatSelectString, MatOptionString
  • MatSlider
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supported types: sbyte, byte, short, ushort, int, uint, long, ulong, char, float, double, decimal, decimal?
    • Supports Blazor validation using EditContext
    • Added Step parameter
  • MatSlideToggle
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supported types: bool, bool?
    • Supports Blazor validation using EditContext
  • MatTextField, MatStringField
    • Generic type supports: TValue parameter should be defined if he is not inferred.
    • Supported types: string, sbyte, byte, short, ushort, int, uint, long, ulong, char, float, double, decimal, decimal?, DateTime, DateTime?, bool, bool?
    • Supports Blazor validation using EditContext
    • New component MatStringField - replacement old MatTextField - just for string values without generic TValue parameter.
  • MatBlazorInstall - removed

MatBlazor 1.10.1

  • Update to .NET Core 3.1 Preview 1
  • Added an active index to the MatTabGroup and MatTabBar #289 (Thanks to chris1411)
  • Auto-Active MatNatItem #268 (Thanks to enkodellc)
  • Fixed "Items per Page" #290 (Thanks to msitconsulting)
  • Update Readme.md (EmbeddedBlazorContent) #270 (Thanks to manuel3108)
  • Update BlazorBoilerplate description #299 (Thanks to enkodellc)

MatBlazor 1.9.0

  • Update to .NET Core 3.0

MatBlazor 1.8.0

  • Update to .NET Core 3.0 RC 1

MatBlazor 1.7.4

  • Support arrow keys and Enter in Autocomplete #237 (Thanks to dga711)
  • MatDialog: New CanBeClosed property #241 (Thanks to dga711)
  • Fix: Enhanced MatSelect throws exception(#231) #242 (Thanks to aviezzi)

MatBlazor 1.7.2

  • PR: Add some padding to toasts #238 (Thanks to dga711)
  • PR: AutoComplete list cleaner look #239 (Thanks to dga711)

MatBlazor 1.7.1

  • Change info in Nuget package

MatBlazor 1.7.0

  • Update to .NET Core 3.0 Preview 9
  • PR: Return Toast instance on IMatToaster.Add method #228 (Thanks to Sebbstar)
  • PR: Replaced all @functions by @code. #233 (Thanks to SeppPenner)

MatBlazor 1.6.4

  • Fix: MatAutocomplete StringValue clearing #216 (Thanks to lukblazewicz)
  • Fix: MatSelect option list in enhanced mode showing example list #221 (Thanks to aviezzi)

MatBlazor 1.6.3

  • MatTable: Fix broken paginator when infinite items selected #202 (Thanks to dga711)
  • MatDialog.IsOpenChanged now also fires on open #200 (Thanks to dga711

MatBlazor 1.6.2

  • Fixed: MatTooltip: Position inside <table> is off #195

MatBlazor 1.6.1

  • Check ComponentContext.IsConnected for all Js-Invoke's
    • This should have solved the problem with the RenderStaticComponentAsync, but did not.
    • You should use RenderComponentAsync, also because in Preview 9 RenderStaticComponentAsync will be removed (dotnet/aspnetcore#12245).
  • PR: Incorporate validation styling and improve EditContext demo #190 (Thanks to ebekker)

MatBlazor 1.6.0

  • Update to .NET Core 3.0 Preview 8

MatBlazor 1.5.4

  • Fix of EditContext for MatDatePicker

MatBlazor 1.5.3

  • PR: Add flatpickr options to MatDatePicker #182 (Thanks to djinnet)
  • PR: Initial support for EditContext-based validation #178 (Thanks to ebekker)


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap