谁对WPF的UserControl有研究的。
一个界面根据用户不同展示不同用语,
因为是一次性的读取,我觉得没必要用实现INotifyPropertyChanged的方式。
思路一、是在界面展示前修改静态绑定的界面用语。
但在Loaded事件里处理已经太晚。
UserControl有没有什么事件是在Loaded之前的?
思路二、Loaded事件里处理后,整个UserControl刷新一下绑定。
不知道UserControl有没有什么方法能刷新显示所有绑定值,而不需要每个绑定值单独刷新?
不知道用javascript可以吗?get('usercontrol路径',返回内容)
构造函数, OnInitialized, OnApplyTemplate等这些函数都是在Load事件前执行的。
在绑定语句中,设置一下触发绑定时机的属性。
/// <summary>
/// 显示前调用
/// </summary>
public override void OnApplyTemplate()
{
//显示前要做的事情
}
重写OnApplyTemplate方法就ok了,
为啥不用绑定呢,这种单向绑定就可以,数据源改了直接更新界面相关数据
至于INotifyPropertyChanged,写个基类,新的数据结构继承后自动添加这个接口
或者采用动态资源的方式,类似于多语言的实现方式