Wpf 将referenceequals更改为reference.cs中的equals
我有一个使用wcf Web服务的wpf应用程序。这是我的Web服务和应用程序,因此我可以对任何一方进行更改。在visual studio自动生成的Reference.cs文件中,它将以下代码用于属性更改事件:Wpf 将referenceequals更改为reference.cs中的equals,wpf,wcf,binding,propertychanged,Wpf,Wcf,Binding,Propertychanged,我有一个使用wcf Web服务的wpf应用程序。这是我的Web服务和应用程序,因此我可以对任何一方进行更改。在visual studio自动生成的Reference.cs文件中,它将以下代码用于属性更改事件: [System.Runtime.Serialization.DataMemberAttribute()] public string Value { get { return this.ValueField; }
[System.Runtime.Serialization.DataMemberAttribute()]
public string Value {
get {
return this.ValueField;
}
set {
if ((object.ReferenceEquals(this.ValueField, value) != true)) {
this.ValueField = value;
this.RaisePropertyChanged("Value");
}
}
}
对于字符串,我真正想要的是:
[System.Runtime.Serialization.DataMemberAttribute()]
public string Value {
get {
return this.ValueField;
}
set {
if ((object.ReferenceEquals(this.ValueField, value) != true)) {
if (this.ValueField != value)
{
this.ValueField = value;
this.RaisePropertyChanged("Value");
}
}
}
}
这样,如果值相同,则property changed事件不会关闭。之所以会出现这个问题,是因为我监听了文本框的onPreviewTestInput,并以编程方式更改了值,然后事件发生了两次,一次是因为我更改了它,一次是因为wpf通过绑定更改了它
谢谢,如果您同时控制服务器和客户端,则可以在单独的程序集中定义您的类型,然后从两个项目中引用该程序集
在“WCF引用添加”对话框“高级设置”中,您可以告诉它重复使用类型,然后它将使用客户端公共程序集中存在的数据对象的任何实现。如果您同时控制服务器和客户端,则可以在单独的程序集中定义类型,然后从两个项目中引用该程序集
在“WCF引用添加”对话框的“高级设置”中,您可以告诉它重复使用类型,然后它将使用客户端公共程序集中存在的数据对象的任何实现。根据我的解决方案的拆分方式,该解决方案不起作用,是否有方法覆盖自动生成的reference.cs文件中的方法?@odyth-I有时在没有其他选项出现时编辑reference.cs文件。这些情况下的问题是,您必须记住您编辑了文件,并且在文件发生更改时再次进行相同的更改。根据我的解决方案的拆分方式,这些更改将不起作用,是否有方法覆盖自动生成的reference.cs文件中的方法?@odyth-I有时在没有其他选项出现时编辑reference.cs文件。这些情况下的问题是,您必须记住您编辑了该文件,并在每次更改时再次进行相同的更改。