Skip to content
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

Provide a formalized mechanism with BindableObjects, so we can update the values but not trigger a handler update #22585

Open
PureWeen opened this issue May 22, 2024 · 1 comment
Assignees
Labels
area-controls-general General issues that span multiple controls, or common base classes such as View or Element

Comments

@PureWeen
Copy link
Member

Description

We're starting to see a number of scenarios where circular updates are causing performance issues.

#22347
#22413

You can see this pretty easily with any control that sends an update from platform code to xplat code.

For example, the radiobutton

  • click the radiobutton
  • radiobutton sets xplat value via (SetValue(IsCheckedProperty, true, specificity: SetterSpecificity.FromHandler);)
  • this triggers OnPropertyChanged on the Element code

image

  • this now propagates back down to the handler (Ideally this wouldn't happen)

Considerations

  • Is there a SetValue Path we should make public to users?
  • Is this something we should build into BindableObject? Shift all the code from Element.OnPropertyChanged up into BindableObject?

Related Issue

#5587

I'm curious if we can fix both of these issues with the same PR :-)

@dotnet-policy-service dotnet-policy-service bot added the s/triaged Issue has been reviewed label May 22, 2024
@PureWeen PureWeen added area-controls-general General issues that span multiple controls, or common base classes such as View or Element and removed s/triaged Issue has been reviewed labels May 22, 2024
@PureWeen PureWeen added this to the .NET 9 Planning milestone May 22, 2024
Copy link
Contributor

Hi I'm an AI powered bot that finds similar issues based off the issue title.

Please view the issues below to see if they solve your problem, and if the issue describes your problem please consider closing this one and thumbs upping the other issue to help us prioritize it. Thank you!

Open similar issues:

Note: You can give me feedback by thumbs upping or thumbs downing this comment.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-controls-general General issues that span multiple controls, or common base classes such as View or Element
Projects
Status: Todo
Development

No branches or pull requests

2 participants