-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
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
Implemented MultiBindingExpression
#16219
base: master
Are you sure you want to change the base?
Conversation
- Swap `target` and `targetProperty` order to make it consistent with other similar methods - Make `targetProperty` nullable as it will need to be null for `MultiBinding`
It will need to be null for `MultiBinding`.
It will need to be null for `MultiBinding`.
Only publish unset value if we've already published a value.
You can test this PR using the following package version. |
You can test this PR using the following package version. |
converted = _targetNullValue; | ||
if (converted == AvaloniaProperty.UnsetValue) | ||
converted = _fallbackValue; | ||
PublishValue(converted); |
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 doesn't seem to handle BindingOperations.DoNothing
anymore: DoNothing
is directly published to the target.
MultiValueConverterTests
is supposed to check this but the test passes for the wrong reason, because DoNothingType
isn't convertible to the target string
type.
What does the pull request do?
Implements
MultiBindingExpression
and makesMultiBinding
use it instead of relying on the now-obsolete APIs it was using before.Shouldn't have much user-facing effect, though does allow us to fix #16084
Also removes a couple of usages of the obsolete
IBinding.Initiate
API from multi-binding tests and adds nullable annotations to that file.Fixed issues
Fixes #16084