当前位置: 首页 > 编程语言 > C#

DataBinding好像没有刷新分享

时间:2023-04-10 19:22:31 C#

DataBinding好像没有刷新不知道为什么,我真的很纠结。我是wpf的新手,我似乎找不到理解这个简单问题所需的信息。我试图将一个文本框绑定到一个字符串,即程序活动的输出。我为字符串创建了一个属性,但是当属性发生变化时,文本框却没有。我的列表视图有问题,但创建了一个刷新列表视图的调度程序。我一定遗漏了一些要点,因为我认为使用WPF的好处之一是不必手动更新控件。我希望有人能把我送到正确的方向。在windowMain.xaml.cs中privatestringdebugLogText="initialvalue";publicStringdebugLog{get{返回debugLogText;}设置{debugLogText=值;在windowMain.xamlx:Name="wndowMain"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"DataContext="{BindingRelativeSource={RelativeSourceSelf}}"在您的类中实施INotifyPropertyChanged。如果您有许多需要此接口的类,我发现使用如下所示的基类通常会很有帮助。公共抽象类ObservableObject:INotifyPropertyChanged{protectedObservableObject(){}publiceventPropertyChangedEventHandlerPropertyChanged;protectedvirtualvoidOnPropertyChanged(PropertyChangedEventArgse){varhandler=PropertyChanged;if(handler!=null){handler(this,e);}}protectedvoidOnPropertyChanged(stringpropertyName){OnPropertyChanged(newPropertyChangedEventArgs(propertyName));然后您只需确保在属性值更改时引发PropertyChanged事件。例如:以上是C#学习教程:数据绑定似乎没有刷新所有分享的内容。如果对大家有用,需要详细了解C#学习教程,希望大家多多关注——publicclassPerson:ObservableObject{privatestringname;publicstringName{get{返回名称;}set{if(value!=name){name=value;OnPropertyChanged("名称");}}}}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: