Posts

Showing posts from March, 2023

Blazor Design System (Part 1)

Image
  I have mentioned in several previous posts that I have a long list of Blazor applications that I want to build.   I did a self-driven analysis of the structure and hurdles of all the different applications I have written and the applications I have planned to develop.   I found patterns to slow starts.   My new goal is to eliminate the built-in excuses for not even starting these new projects by building a design system. From my analysis, I found out I get stuck on several decision hurdles:                1.        Colors        2.        Layout        3.        Authentication        4.          Database Use        5.        User Controls        6.        Data Grid controls The challenge is to remove as many of these barriers to starting new projects.   I think I have a new system design that will provide me with most of this solution.   I will be explaining the solution in this multipart post where I will dive into each design area and explain how I have streamed-lined m

Blazor Dynamic Linked Dropdown Controls

Image
  I recently came across a unique use case:  Our marketing department wants to be able to send out email promotions to users.  That is simple enough. Additionally, they want to be able to select the recipients by some or all of the following:      1. All      2. Name      3. City      4. Zip Code In addition, they want to be able to select all matching users of a city or zip code or just the Point of Contact (POC) for the account. The last requirement is that if Name is selected with POC no other users can be selected and vice versa.  If the POC is not selected, the user can add names. Backend Design The backend system design is simple, get a list of users and send each one an email.  If the user chooses city or zip code and POC, we will need to filter by those variables.  We will not cover that code in this post. I want to focus on the UI for this solution. Possible UIs There are many ways we could go with the UI.  Ranging from a radio button group for name, city, or zip code.

Blazor Quick Grid

Image
  I have built a data grid that I like to use but it is a little heavy and is not generic yet. If I can find a lighter-weight grid that will meet my needs, I would be happy to replace it. I might have found one. The new data grid component, QuickGrid,   created by the Blazor team could be it. This data grid can be used with .Net 6 or .Net 7, and it is open source. This is not a replacement for a fully functional data grid but does have nice and simple features. The documentation on this component is exceptionally good. It contains samples and in-depth content. The documentation can be found at QuickData Grid . This post is not to be a tutorial on how to use the Data grid, the documentation does an excellent job doing that already. My goal here is to provide feedback on the pros and cons of using this new component.   Get Started The component is available as a NuGet package or in GitHub. If you plan to use the NuGet Package you will need to have pre-release checked. You can u