BlazorWebFormsComponents
A collection of Blazor components that emulate the ASP.NET Web Forms controls of the same name
Install / Use
/learn @FritzAndFriends/BlazorWebFormsComponentsREADME
BlazorWebFormsComponents
A collection of Blazor components that are drop-in replacements for the ASP.NET Web Forms control of the same name. The library also includes some other shims and modules that make migrating to Blazor a smooth experience
Sample Site
The sample site showcases all components with interactive examples, code snippets, and a searchable catalog.
Homepage & Component Catalog

GridView with Interactive Data

Chart Component with Chart.js

Fuzzy Search

Approach + Considerations
We believe that Web Forms applications that have been well maintained and provide value should have a path forward to the new user-interface frameworks with minimal changes. This is not an application converted nor is it a patch that can be applied to your project that magically makes it work with ASP<span></span>.NET Core. This repository contains a library and series of strategies that will allow you to re-use much of your markup, much of your business code and help shorten your application re-write process.
This is not for everyone, not everyone needs to migrate their application. They can continue being supported as Web Forms for a very long time (2029 EOL at the time of this writing) and the applications that are considered for migration to Blazor may be better suited with a complete re-write. For those applications that need to be migrated, this library should help make that process simpler by providing components with the same names, markup, and functionality as previously available.
Documentation is available online. Get started with your migration, steps ahead, and strategy documentation for various controls and tools used are available. Live versions of these components are availalbe on the Live Samples website
Portions of the original .NET Framework are contributed to this project under their MIT license.
Blazor Components for Controls
There are a significant number of controls in ASP.NET Web Forms, and we will focus on creating components in the following order:
- Editor Controls
- Data Controls
- Validation Controls
- Navigation Controls
- Login Controls
- AJAX Controls
Ajax Control Toolkit Components
The Ajax Control Toolkit extender components are available in a separate NuGet package:
These components enable seamless migration of Ajax Control Toolkit extenders to Blazor with minimal markup changes. Simply remove the ajaxToolkit: prefix and you're ready to go!
Supported extender and container components:
- Accordion — Collapsible content panes
- AutoCompleteExtender — Typeahead suggestions
- CalendarExtender — Popup date picker
- CollapsiblePanelExtender — Panel collapse/expand
- ConfirmButtonExtender — Browser confirmation dialogs
- FilteredTextBoxExtender — Character filtering
- HoverMenuExtender — Hover-triggered popups
- MaskedEditExtender — Input mask formatting
- ModalPopupExtender — Modal popup dialogs
- NumericUpDownExtender — Numeric spinner
- PopupControlExtender — Click-triggered popups
- SliderExtender — Range slider
- TabContainer — Tabbed content panels
- ToggleButtonExtender — Image toggle for checkboxes
See the full documentation for detailed examples, migration guidance, and render mode requirements.
We will NOT be convertingany DataSource objects (SqlDataSource, ObjectDataSource, EntityDataSource, LinqDataSource, XmlDataSource, SiteMapDataSource, AccessDataSource), Wizard components, skins or themes. Once this first collection of controls is written, we can consider additional features like modern tag formatting.
Utility Features
There are a handful of features that augment the ASP<span></span>.NET development experience that are made available as part of this project in order to support migration efforts. Importantly, these features are NOT implemented the same way that they are in Web Forms, but rather have the same API and behave in a proper Blazor fashion. These features include:
- DataBinder
- ID Rendering - Render HTML IDs for
