【发布时间】:2015-08-26 21:15:45
【问题描述】:
public class ViewModelBase : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
public void NotifyPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
这是实现 INotifyPropertyChanged 的基类
public class LogActivity : ViewModelBase
{
private string messageLog;
public string MessageLog
{
get
{
return messageLog;
}
set
{
if (value != messageLog)
{
messageLog = value;
NotifyPropertyChanged("MessageLog");
}
}
}
}
这是我的视图模型类
public class SingleMessageViewModel : ViewModelBase
{
private LogActivity messagelog;
public SingleMessageViewModel()
{
messagelog = new LogActivity();
}
public LogActivity MessageLog
{
get
{
return messagelog;
}
set
{
if (value != messagelog)
{
messagelog = value;
NotifyPropertyChanged("MessageLog");
}
}
}
}
这是我对以上属性绑定的看法:
<TextBox x:Name="TxtLog" Text="{Binding LogMessage, UpdateSourceTrigger=PropertyChanged}" Grid.Row="1" TextWrapping="Wrap" AcceptsReturn="True" VerticalScrollBarVisibility="Visible" />
我想在我的一个模型类中使用此属性,并将有关属性更改的通知发送到 viewmodel,以便它可以绑定到上面给出的视图。
请大家为此提供一些帮助。在此先感谢.. :)
【问题讨论】:
-
质量差的问题,充满了错别字。如果我有足够的声誉,我会投反对票。