首页 / 知识
关于c#:查找在ASP.NET中使用特定接口的控件
2023-04-13 06:32:00

Finding controls that use a certain interface in ASP.NET在这段时间里度过了愉快的时光,尽管我觉得我缺少明显的东西。我有一个从
在页面后面的代码中,我想从ASPX中找到此按钮的所有实例。因为我真的不知道类型是什么,所以只知道它实现的接口,这就是我遍历控制树时要做的所有事情。事实是,我不必确定对象是否使用接口,而不必测试其类型。我怎样才能遍历控制树并以干净的方式提取实现 同样,知道这很明显,但是现在刚开始大量使用界面,我似乎无法集中我的Google结果来弄清楚它:) 编辑:
绝对是我的头。 Longhorn213几乎是正确的答案,但是正如肖恩·钱伯斯(sean Chambers)和bdukes所说,应该使用
而不是
之所以这样,是因为如果使用 不起作用的原因
是因为变量 关于longhorn213的答案,最重要的一点是您必须使用递归,否则您可能会错过页面上的某些控件。 尽管这里有一个可行的解决方案,但我也很想看看LINQ是否有更简洁的方法。 您可以只在界面上搜索。如果控件具有子控件,即按钮位于面板中,则也将使用递归。
我将对Longhorn213的示例进行以下更改以对其进行清理:
这样,您可以获取所需类型的对象列表,而无需使用其他强制类型转换。我还对其他人指出的" as"运算符进行了必要的更改。 "运算符"是否可以工作?
接口足够接近应该具有相同感觉的类型。我将使用as运算符。
您还可以根据需要使用is运算符进行测试。
您总是可以使用as强制转换:
如果您要对该类型进行一些工作,那么TryCast是我要使用的。
|
最新内容
相关内容
Python继承性和 java 是一样的吗?
Python继承性和 java 是一样的吗?,情况,代码,名称,第一,培训,初始化,函数,方法,定义,变量,聊完了多态,再来看看面向对象的另一个特征:继承性。python操作系统接口模块:OS
python操作系统接口模块:OS,管理,工作,工具,系统,服务,培训,模块,文件,目录,函数,OS模块提供了很多与操作系统进行交互的函数,比如常见的使用函python的继承
python的继承,通用,合法,培训,方法,函数,实例,定义,类型,可能会,这一点,派生类的定义如下所示:classDerivedClassName(BaseClassName):命名Bapython 抽象类和抽象接口
python 抽象类和抽象接口,概念,基础,设计,培训,数据,接口,方法,相似性,属性,函数,抽象类的本质还是类,指的是一组类的相似性,包括数据属性(如alpython如何查找是否存在某个变量?
python如何查找是否存在某个变量?,培训,变量,函数,定义,属性,参数,字典,对象,类型,方法,python中可以使用locals()、dir()、vars()等函数来查python如何查找是否存在某个变量?
python如何查找是否存在某个变量?,培训,变量,函数,定义,属性,参数,字典,对象,类型,方法,python中可以使用locals()、dir()、vars()等函数来查Python怎么设置代理
Python怎么设置代理,代理,数据,标准,综合,地址,环境,培训,都会,字段,全局,python设置代理的方法:HTTP代理本质上是一个Web应用,它和其他普通Webpython脚本如何查找文件是否存在
python脚本如何查找文件是否存在,异常,培训,代码,文件,模块,路径,程序,脚本,语句,错误,python脚本查找文件是否存在的方法:1、使用os模块os模怎么查找python装在哪里
怎么查找python装在哪里,项目,官网,平台,设计,代码,培训,新和,语言,新功能,磁盘,Python是一种跨平台的计算机程序设计语言。是一种面向对象的python空格怎样设置
python空格怎样设置,代码,培训,空格,括号,语句,条件,冒号,分号,前面,周围,Python最具特色的是用缩进来标明成块的代码。我下面以if选择结构来python中的变量怎么设置
python中的变量怎么设置,数据,变量,信息,名称,培训,赋值,内存,等号,数据类型,浮点,python中变量设置方法:变量存储在内存中的值。这就意味着在python支持多继承吗
python支持多继承吗,培训,代码,不了,上边,函数,属性,例子,父亲,定义,母亲,python多继承单继承有时候可能满足不了我们所需的所以我们就会遇到