- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 WPF 博士的 ObservableSortedDictionary。
构造函数如下所示:
public ObservableSortedDictionary(IComparer<DictionaryEntry> comparer)
我真的很努力地创建一个满足构造函数和工作的实现。
我当前的代码(无法编译)是:
public class TimeCreatedComparer<T> : IComparer<T>
{
public int Compare(T x, T y)
{
var myclass1 = (IMyClass)((DictionaryEntry)x).Value;
var myclass2 = (IMyClass)((DictionaryEntry)y).Value;
return myclass1.TimeCreated.CompareTo(myclass2.TimeCreated);
}
}
它说我无法从 T 转换为 DictionaryEntry。
如果我直接转换为 IMyClass,它会编译,但我收到一个运行时错误,提示我无法从 DictionaryEntry 转换为 IMyClass。在运行时,x 和 y 是 DictionaryEntry 的实例,每个实例都有正确的 IMyClass 作为它们的值。
最佳答案
public class TimeCreatedComparer : IComparer<DictionaryEntry>
{
public int Compare(DictionaryEntry x, DictionaryEntry y)
{
var myclass1 = (IMyClass)x.Value;
var myclass2 = (IMyClass)y.Value;
return myclass1.TimeCreated.CompareTo(myclass2.TimeCreated);
}
}
这是否满足需要?
关于c# - 为 IComparer<DictionaryEntry> 实现 IComparer<T>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2648442/
通用版KeyValuePair和DictionaryEntry有什么区别? 为什么在泛型 Dictionary 类中使用 KeyValuePair 而不是 DictionaryEntry? 最佳答
我正在尝试使用 3 个已经存在的 resx 文件的内容写入 ListView。仅对其中一个文件使用以下循环会产生接近我想要的结果,但我需要的是对多个 DictionaryEntry 使用相同的循环。我
考虑这段代码: var variables = System.Environment.GetEnvironmentVariables(); foreach (DictionaryEntry vari
我有一些代码迭代非泛型 IDictionary 首先调用 LINQ Cast 方法。但是,即使我通过非泛型 IDictionary 专门使用它,在传递泛型字典实现时我也会得到一个无效的强制转换异常。界
当我执行命令时: $var = @{a=1;b=2} 在 Powershell(第 3 版)中,$var最终得到的值为 {System.Collections.DictionaryEntry, Sys
我基本上想这样做: if(obj is IDictionary) { return "{" + string.Join(Environment.NewLine, ((IDictionary)o
IDictionary继承自 IEnumerable> , 但是 IDictionary由于某种原因不继承自 IEnumerable .我想知道为什么?我讨厌写这个丑陋的.OfType()每次我需要对
我正在使用 WPF 博士的 ObservableSortedDictionary。 构造函数如下所示: public ObservableSortedDictionary(IComparer comp
我有资源 Resource1有很多字符串 doc1,doc2,...等我想检索列表中此资源中的所有内容我编写了以下代码但是在转到 foreach 时给我一个异常(exception)循环这是我的代
我是一名优秀的程序员,十分优秀!