iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >C#的Cast<T>怎么使用
  • 415
分享到

C#的Cast<T>怎么使用

2023-06-18 00:06:12 415人浏览 泡泡鱼
摘要

这篇文章主要讲解了“C#的Cast<T>怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#的Cast<T>怎么使用”吧!窗体控件中是有个List控件(asp.

这篇文章主要讲解了“C#的Cast<T>怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#的Cast<T>怎么使用”吧!

窗体控件中是有个List控件(asp.net)和一个ListView控件(winform)。

就以ListView为例子吧,ListView控件可以包含很多项,也可以说是一个集合,就让我们来看看它的Items属性吧!

public class ListView : Control{  public ListView.ListViewItemCollection Items { get; }  public class ListViewItemCollection : IList, ICollection, IEnumerable {    }  }

ListView的Items类型是ListView.ListViewItemCollection,这个ListViewItemCollection实现了IEnumerable。ListView.Items正是一个非泛型的集合,因此可以应用Cast<T>。以下代码假定 listBox 数据绑定在一个Employee的集合上:

int count = listBox.Items.Cast<Employee>().Count();  bool b = listBox.Items.Cast<Employee>().Any(e => e.FirstName == "Bob");

同样C# Cast<T>可以用在ComboBox、DataGridView、Treenode上:

//ComboBox  var v1 = comboBox.Items.Cast<People>();  //DataGridView  var v2 = dataGridView.SelectedRows.Cast<DataGridViewRow>();  var v3 = dataGridView.SelectedColumns.Cast<DataGridViewColumn>();  var v4 = dataGridView.SelectedCells.Cast<DataGridViewCell>();  //TreeNode  var v5 = treeNode.Nodes.Cast<TreeNode>();

这几个应用中应该第 4 行的应用最多,获取选中行是DataGridView使用最频繁的操作之一。试看下面代码:

  1. //计算平均年龄  

  2. int age = dataGridView.SelectedRows.
    Cast<Employee>().Average(p=>p.Age);  

  3. //统计所在城市  

  4. string[] cities = dataGridView.SelectedRows.
    Cast<Employee>().Select(p => p.City).Distinct(); 

用了C# Cast<T>,我们的代码很精简。Cast<T>甚至还可以用在所有控件的基类Control上,它的Controls属性也是非泛型的!

//Control  var v6 = control.Controls.Cast<Control>();

感谢各位的阅读,以上就是“C#的Cast<T>怎么使用”的内容了,经过本文的学习后,相信大家对C#的Cast<T>怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: C#的Cast<T>怎么使用

本文链接: https://www.lsjlt.com/news/294532.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • C#的Cast<T>怎么使用
    这篇文章主要讲解了“C#的Cast<T>怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#的Cast<T>怎么使用”吧!窗体控件中是有个List控件(ASP....
    99+
    2023-06-18
  • C#中的队列Queue<T>与堆栈Stack<T>
    一、概述: Queue<T>队列,对象的先进先出集合(“FIFO”)。Stack<T>栈,对象的后进先出集合(”LIFO&...
    99+
    2024-04-02
  • C# 泛型集合类List<T>使用总结
    目录为什么选择使用List,而不是使用Array,或者ArryList去重、交集、并集、差集操作重写Equals() 和 GetHashCode()简单使用C#中List可谓是使用最...
    99+
    2024-04-02
  • C#泛型集合类List<T>如何使用
    这篇“C#泛型集合类List<T>如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#泛型集合类List&...
    99+
    2023-06-30
  • C++中vector<vector<int> >的基本使用方法
    目录前言一、为什么是vector?二、什么是vector?2.0 容器特性2.1. 基本操作2.2. 常见定义方法:2.3. 使用方法2.3.1 创建一维vector:2.3.2 定...
    99+
    2024-04-02
  • WF4.0 Beta2中的Switch<T>是什么
    这篇文章将为大家详细讲解有关WF4.0 Beta2中的Switch<T>是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。对于微软的WF工作流,很多开发人员都有过接触。对于新版的WF4.0 ...
    99+
    2023-06-17
  • html中<Table> <tr> <th> <td>表格标签怎么用
    这篇文章将为大家详细讲解有关html中<Table> <tr> <th> <td>表格标签怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇...
    99+
    2024-04-02
  • &lt;&lt; &gt;&gt;c语言怎么算
    c 语言求和的两种方法:使用 for 循环:适用于数组较小或需要灵活性的情况。使用指针:适用于数组较大或需要提高效率的情况。 C 语言的求和方法 C 语言中进行求和有多种方法,具体选择...
    99+
    2024-04-05
    c语言
  • C/C++左移<<,右移>>的作用及说明
    目录C/C++ 左移<<, 右移>>作用1. 左移 <<2. 右移 >>3. 数字 1 左移 <<C++ 左移右移越界情况...
    99+
    2024-04-02
  • C#使用Lazy<T>实现对客户订单的延迟加载
    "延迟加载"是指在需要的时候再加载数据。比如获得一个Customer信息,并不会把该Customer的Orders信息一下加载出来,当需要显示Orders的时候再...
    99+
    2024-04-02
  • C#中List<T>存放元素的工作机制
    List<T>是怎么存放元素?我们扒一段List<T>的一段源码来一窥究竟。 using System; using System.Diagnostic; u...
    99+
    2022-11-13
    C# List<T> 存放元素
  • html中<dl> <dt> <dd> 标签元素怎么用
    这篇文章主要介绍了html中<dl> <dt> <dd> 标签元素怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家...
    99+
    2024-04-02
  • 怎么在C#项目中实现一个带通知的List<T>
    怎么在C#项目中实现一个带通知的List<T>?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。实现using System;using Syste...
    99+
    2023-06-06
  • c语言中&lt;&lt;和&gt;&gt;的用法
    在 c 语言中,> 是位移运算符,用于对整型变量进行位操作:>:右移运算符,将操作数二进制表示向右移动指定位数,相当于 2 的幂次方除法。有符号右移 (>>) 保...
    99+
    2024-04-28
    c语言 位移运算符
  • C# IQueryable<T>揭开表达式树的神秘面纱
    目录什么是树?解析表达式树实现自己的IQueryable<T>、IQueryProvider总结什么是树? 什么是树?这个问题好像有点白痴。树不就是树嘛。 我们从最下面的...
    99+
    2024-04-02
  • HTML的<custom-button>怎么使用
    本文小编为大家详细介绍“HTML的<custom-button>怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“HTML的<custom-button>怎么使用”文章能帮助大...
    99+
    2024-04-02
  • HTML的<title>元素怎么使用
    这篇文章主要介绍“HTML的<title>元素怎么使用”,在日常操作中,相信很多人在HTML的<title>元素怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,...
    99+
    2024-04-02
  • HTML的<script>标签怎么使用
    这篇“HTML的<script>标签怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起...
    99+
    2024-04-02
  • php中<pre>该怎么使用
    本篇内容介绍了“php中<pre>该怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!php中<pre>是htm...
    99+
    2023-06-22
  • HTML的<base>标签怎么使用
    这篇文章主要介绍“HTML的<base>标签怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“HTML的<base>标签怎么使用”文章能...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作