Restore pre-NET8 automation behavior in the ItemsControl #8712
+11
−3
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.
Fixes #8679
Description
Pull request #6862 fixed an issue with grouped ItemsControl not exposing grouped items to the automation, but as a side-effect it broke automation in ItemsControl without grouping. This pull request keeps the fix for grouped ItemsControl and restores the original behavior for non-grouped ItemsControl.
Customer Impact
Automation is broken for non-grouped ItemsControl.
Regression
Yes. This is broken since NET8, in NET7 and NET6 this was working correctly.
Testing
Sample app from #6861 on NET6 was updated with XAML from sample app in #8679 and the custom ItemsControl code was patched with the proposed fix test.zip. Both grouped and ungrouped ItemsControls are working.
Risk
Like the original change that has caused the issue in NET8 automation, even this pull request can have some unforeseen consequences in scenarios not covered by the current test cases.
Microsoft Reviewers: Open in CodeFlow