-
Notifications
You must be signed in to change notification settings - Fork 1k
Recalculate the node position of the TreeView when DrawMode = TreeViewDrawMode.OwnerDrawText #12698
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
Closed
LeafShi1
wants to merge
7
commits into
dotnet:main
from
LeafShi1:Issue_12681_fix_recalculate_node_position
Closed
Changes from all commits
Commits
Show all changes
7 commits
Select commit
Hold shift + click to select a range
8da2d04
Rebase main
LeafShi1 78fbc33
Rebase main
LeafShi1 c817ae8
Replace AssemblyRef with Assemblies
LeafShi1 3fe9c5c
Merge branch 'Issue_12681_fix_recalculate_node_position' of https://g…
LeafShi1 5cb9458
Redraw editTextBox
LeafShi1 e67cf6d
Add comment for BeginInvoke((MethodInvoker)
LeafShi1 69e6e3d
Add update comment and optimize method CalculatePreferredHeight
LeafShi1 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
When would this be happening on anything but the UI thread? What exactly are we waiting for with "fully initialized"? What has to happen before we do this?
Uh oh!
There was an error while loading. Please reload this page.
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.
This is just a comment on BeginInvoke((MethodInvoker)), but Windows Forms controls cannot be called across threads, so the comment on cross-thread calls seems redundant.
I tried calling
PInvoke.SetWindowPos
directly here, and although it was executed, it had no effect, so I addedBeginInvoke((MethodInvoker))
here to ensure that all properties and states of theEditControl
have been set and layout completed before performing the repositioning.Reposition the edit text box to fix the issue
The right border of the node's checkbox is not visible in the edit mode of the node
Uh oh!
There was an error while loading. Please reload this page.
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.
Maybe you should pump messages after setting windows position? Application.DoEvents. But this change seems to be too complicated and risky, I suggest gropping it and re-visiting this bug if reported by customers. @merriemcgaw @JeremyKuhne - Thoughts?