vikramlearning / blazorbootstrap

An Enterprise-class Blazor Bootstrap Component library built on the Blazor and Bootstrap CSS frameworks.
https://docs.blazorbootstrap.com/
Apache License 2.0
565 stars 15 forks source link

Performance Optimizations #760

Open Lucasharskamp opened 1 week ago

Lucasharskamp commented 1 week ago

Continues from https://github.com/vikramlearning/blazorbootstrap/pull/747


If you let Blazor itself fill the Parameter/CascadingParameter items, it causes a kind of System.Reflection magic which is not great for performance. This is fine for pages or components which aren't used over and over, but for things like buttons this is very performance intensive. By setting the parameters ourselves, pages and components are rendered a tad faster, and this creates a noticable improvement when rendering things like Grids.

Apart from that, this PR contains little changes: more added documentation and a bugfix for AccordionItems.

gvreddy04 commented 1 week ago

@Lucasharskamp I appreciate :clap: your efforts on this pull request (PR) . This is a very large PR. I don't have any intention of holding up any PRs unless they introduce too many changes. This PR introduces too many changes in one go. I cannot merge this PR as-is. I'll take care of this PR, so don't worry about out-of-sync changes; I'll merge the changes step-by-step. For Light and Dark mode, I'm looking for a better way to implement it. Performance optimization is definitely needed for improvements.

Can you share the Accordion bug fix information for my understanding?

Lucasharskamp commented 1 week ago

@Lucasharskamp I appreciate 👏 your efforts on this pull request (PR) . This is a very large PR. I don't have any intention of holding up any PRs unless they introduce too many changes. This PR introduces too many changes in one go. I cannot merge this PR as-is. I'll take care of this PR, so don't worry about out-of-sync changes; I'll merge the changes step-by-step. For Light and Dark mode, I'm looking for a better way to implement it. Performance optimization is definitely needed for improvements.

Can you share the Accordion bug fix information for my understanding?

Reminder that these were far smaller but you kept pushing changes, causing me to have to re-merge it with new features. Bit of a snowball effect.

Lucasharskamp commented 1 week ago

Added disabled buttons color/bg color/border color for the CSS generator.