dotnet / dotnet/maui

Prioritize the Binding Types property over local members when the BindingContext is set. Referring to a local member be explicit.

Open
#34,082 1 comment 1 reaction 0 assignees View on GitHub
proposal/open
Dominant language
C#
Stars
23.3k
Forks
2k
Avg merge
1d 14h
Merged PRs (30d)
296

Description

### Description

In XAML C# expression, prioritize the Binding Types property over local members when the BindingContext is set. When referring to a local member, be explicit, e.g., `this.Title`.

The current design returns an error, indicating ambiguity and suggesting adding a period. Doing so can affect the expression's readability.

### Public API Changes

Current flow to continue as it is. When the developer wants to refer to the local member, let them explicitly state it as `this.Member`. When there's no prefix, it refers to the member from the binding context.

### Intended Use-Case

Clarity of XAML C# Expression and a smooth migration.

Contributor guide

Open the contributing guide

Research direction

Start by locating the XAML C# expression binding-resolution entry point and the tests covering BindingContext name lookup. Verify that unprefixed names prefer Binding Types when a BindingContext is set, while local members remain available through an explicit this.Member reference.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.