抱歉,如果有类似的问题,我在搜索中找不到。这个问题看起来很相似,但还不够接近。
无论如何,就像标题中一样,我只是想确保我正在做的事情不会被认为是不好的做法,或者没有更好的方法,因为我现在的工作方式感觉不太正确(我'在数据绑定方面很新)。
无论如何,上代码:
所以我有一些我的 XAML 绑定到的属性,我想在属性更改时更新 XAML。问题是我更喜欢我不直接设置的属性,而是那些计算它们的值的属性。那么这是实现这一目标的良好/合法方式吗?
public IPolicy Policy
{
get { return _policy; }
set
{
_policy = value;
OnPropertyChanged("HasAdminFee");
OnPropertyChanged("AdminFeeMessage");
}
}
public bool HasAdminFee
{
get { return Policy != null && Policy.ChargeAdminFeesValue > 0; }
}
public string AdminFeeMessage
{
get { return HasAdminFee ? string.Format(HasAdminFeeMessage, PolicyFact.ChargeAdminFeesValue) : NoAdminFeeMessage; }
}
public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged(string propertyName)
{
PropertyChangedEventHandler handler = PropertyChanged;
if (handler != null)
{
handler(this, new PropertyChangedEventArgs(propertyName));
}
}
谢谢。