【发布时间】:2014-06-28 10:08:21
【问题描述】:
将 ListBox 的 ItemsSource 绑定到 ObservableCollection<object> 时出现此异常。
集合中混合了 {DependencyPropertyChangedEventArgs, EventEntry}
我偷看了DependencyPropertyChangedEventArgs发现:
public struct DependencyPropertyChangedEventArgs
{
...
public override bool Equals(object obj)
{
return this.Equals((DependencyPropertyChangedEventArgs)obj); <- huge cast right here?
}
}
EventEntry 代码:
public class EventEntry
{
public EventEntry(string name)
{
Name = name;
}
public string Name { get; private set; }
}
当我阅读偷看的代码时,它旨在爆炸。
是这样吗?
【问题讨论】:
-
从 DependencyPropertyChangedEventArgs 派生并覆盖 Equals?或者根本不使用它,而是使用你自己的类?
-
@Clemens 是的,是时候解决问题了!
标签: c# wpf casting listbox equality