讓我的價值,我不拿東西的,我有這個類:爲什麼我需要一個評估,而不是直接從我綁定對象的數據屬性
public class User : BindableObject, INotifyPropertyChanged
{
// ...
[JsonIgnore]
public static readonly BindableProperty PseudoProperty =
BindableProperty.Create(nameof(Pseudo), typeof(string), typeof(User), "");
public string Pseudo
{
get { return (string)GetValue(PseudoProperty); }
set { SetValue(PseudoProperty, value); }
}
// ...
}
這是在像C#的部分中聲明:
[XamlCompilation(XamlCompilationOptions.Compile)]
public partial class MapPage : ContentPage, INotifyPropertyChanged
{
// ...
/// <summary>
/// Current user property.
/// </summary>
public static readonly BindableProperty CurrentuserProperty =
BindableProperty.Create(nameof(CurrentUser), typeof(User), typeof(MapPage), User.GetUserInstance());
/// <summary>
/// Current user accessor
/// </summary>
private User CurrentUser
{
get { return (User)GetValue(CurrentuserProperty); }
set { SetValue(CurrentuserProperty, value); }
}
// ...
public MapPage()
{
base.BindingContext = this;
}
// ...
}
如果我想顯示在XAML的Pseudo
財產,我看到網上說我可以這樣做的:
<Label Text="{Binding CurrentUser.Pseudo}"/>
但是,它不工作..
奇怪的是,我可以顯示在XAML側Pseudo
,如果我在C#創建側一個評估:
public string UserPseudo { get { return CurrentUser.Pseudo; } }
我然後結合自己的價值像它:
<Label Text="{Binding UserPseudo}"/>
有人能解釋我的邏輯,因爲我真的不知道明白爲什麼我需要一個評估,而不是僅僅結合直接我的標籤的值和我的對象的屬性值?
感謝幫助..
我接過來一看,但是,我不知道,瞭解你給了,因爲我的價值不是一成不變的鏈接..再看看我的代碼和他的代碼;) – Emixam23
你的頁面的DataContext設置爲什麼? –
在構造函數中,我剛剛編輯的帖子:) – Emixam23