-
-
Notifications
You must be signed in to change notification settings - Fork 532
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TreeView: Add virtualization support #5689
Conversation
CLA Assistant Lite bot: I have read the CLA Document and I hereby sign the CLA ddjerqq seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, please add release notes to the 2024-10-15-release-notes-170.razor
.
Documentation/Blazorise.Docs/Pages/Docs/Extensions/TreeView/TreeViewPage.razor
Outdated
Show resolved
Hide resolved
Source/Extensions/Blazorise.TreeView/Internal/_TreeViewNode.razor.cs
Outdated
Show resolved
Hide resolved
Source/Extensions/Blazorise.TreeView/Internal/_TreeViewNode.razor.cs
Outdated
Show resolved
Hide resolved
Added the relevant logs to the current changelog's optimization section. Updated the summary string documentation for the Virtualize Parameter of TreeView
DOCS: 2. By setting Virtualize to true should we not have sane defaults where it would just work? Why are we making our users have to manually set additional settings? In my opinion it should automatically work, but users can further customize it if they want to, changing max height, etc... 3. Can we see more nesting? What will happen? Will it work ok? Will it be a bunch of vertical bars? 5. How is dynamic data handled? Imagine I had data to the treeview will it break anything? would be nice to adapt the DEMO version to work with it, since you can already do alot of interactions with the treeview there, and you can check how the Virtualize affects these. |
Documentation/Blazorise.Docs/Pages/News/2024-10-15-release-notes-170.razor
Outdated
Show resolved
Hide resolved
Documentation/Blazorise.Docs/Pages/Docs/Extensions/TreeView/TreeViewPage.razor
Outdated
Show resolved
Hide resolved
It seems this is the problem of the bigger picture. We pass all the parameters that were assigned to the root treeview elements down to the child tree nodes. I think we should not pass the down, only the necessary that are needed for the child nodes to get the data and states. |
Probably not sure? Could these be acting as a king of global way of styling all nodes? So if you remove these, some TreeViews that might rely on them, might get a different UI result? |
I have removed styling parameters from not being passed down and tested all examples. And it seems to be working as expected. |
@stsrki Already asking for review? Already gone through all the points? 1, 2,3, 3.1, 3.2, 5? |
I will do the 2. point. For others, there should not be any problems. |
So you're telling me you don't see any problems with this?
|
It works on all levels. Root level is the one where height and overflow is defined. I tested it on multiple levels, and it works as it should. |
@David-Moreira please re-review. |
Added virtualization support to the TreeView component
Closes #5649
How Has This Been Tested?
I ran the demo project and checked that the TreeView worked.
Types of changes
Checklist:
master
for dev,rel-1.x
for maintenance).