zoukankan      html  css  js  c++  java
  • 无法将类型为“System.Windows.Controls.SelectedItemCollection”的对象强制转换为类型“System.Collections.Generic.IList`1

    在WPF中DataGrid 选择事件中获取SelectedItems
    报错如下
    无法将类型为“System.Windows.Controls.SelectedItemCollection”的对象强制转换为类型“System.Collections.Generic.IList`1[SomeModel]”。
    应该如此使用
    
      System.Collections.IList items = (System.Collections.IList)this.dataGrid.SelectedItems;
      var collection = items.Cast<SomeModel>();
      var someModelList = collection.ToList(); 
    -------------------------------------
    Cast 方法
     //
            // 摘要: 
            //     将 System.Collections.IEnumerable 的元素转换为指定的类型。
            //
            // 参数: 
            //   source:
            //     包含要转换的元素的 System.Collections.IEnumerable。
            //
            // 类型参数: 
            //   TResult:
            //     source 中的元素要转换成的类型。
            //
            // 返回结果: 
            //     一个 System.Collections.Generic.IEnumerable<T>,包含已转换为指定类型的源序列的每个元素。
            //
            // 异常: 
            //   System.ArgumentNullException:
            //     source 为 null。
            //
            //   System.InvalidCastException:
            //     序列中的元素不能强制转换为 TResult 类型。
            public static IEnumerable<TResult> Cast<TResult>(this IEnumerable source);
    View Code
  • 相关阅读:
    MongoDB 生态 – 可视化管理工具
    SOLR对多个(关联)表创建索引
    sublime 插件zen coding
    12/12工作笔记
    阅读《深入理解JavaScript定时机制》
    继续谈论XSS
    支付宝快捷支付模型
    谈论XSS
    生产者消费者模型
    如何根据iframe内嵌页面调整iframe高宽续篇
  • 原文地址:https://www.cnblogs.com/aguan/p/4717858.html
Copyright © 2011-2022 走看看