网页中控件查找

简介:

有许多人都可能曾经为在后台写代码时找到不到前台的控件发愁过,当然曾经的我也是非常的苦恼的,我就通过这篇文章将我的一些经验告诉给大家。

下面我就以Grid控件为例子给大家讲解。

首先我先讲解一种最简单的方法,一般最简单的方法都是有一些局限性的。

 TextBox TextBoxName = (TextBox)e.Item.FindControl("TextBoxName");

  TextBox就是控件的控件名,TextBoxName不用说了就是控件的ID了。

它的局限性就是需要e的属性是GridCommandEventArgs才可以的,譬如:

protectedvoid RridTest_ItemCommand(object source, GridCommandEventArgse)

{

}

在这种情况下我们还可以使用一种方法,

  GridEditableItem editedItem = e.Item asGridEditableItem;

string WickedID = editedItem["WickedID"].Text;

当然它的局限性也是上面的那个。

但是当我们使用RadioButtonCheckBox等不能使用GridCommandEventArgs或者不能使用CommandName属性的控件时候在Grid中我们又能怎样去获取呢,下面我给大家一个方法,这个方法是我在网上寻找的,今天我给大家粘贴过来一起看看

RadioButton RadioButtonOther =(RadioButton)FindControlEx(GridTest,"RadioButtonOther");

   ///<summary>

///递归查找找指定ID的控件

///</summary>

///<param name="Parent">父控件控件容器)</param>

///<param name="id">要查找的控件ID</param>

///<returns>回传ä符合ID的控件,若未找到则返回Null</returns>

public System.Web.UI.ControlFindControlEx(System.Web.UI.Control Parent, string id)

   {

      System.Web.UI.Control oCtrl = null;

//先使用FindControl 去查找指定的子控件

       oCtrl =Parent.FindControl(id);

//如果未找到则往下层递归方式去查找°

if (oCtrl == null)

       {

foreach (System.Web.UI.ControloChildCtrl in Parent.Controls)

           {

//以递归方式回调原函数

              oCtrl = FindControlEx(oChildCtrl, id);

//如果找到指定控件则退出循环

if (oCtrl != null)break;

           }

       }

return oCtrl;

   }

下手试试看看是不是很好用的。感谢一下上面代码的作者。

如果你还一些更好的方法,也可以发出来和大家共享。谢谢。



本文转自HDDevTeam 51CTO博客,原文链接:http://blog.51cto.com/hddev/1253733,如需转载请自行联系原作者

相关文章
|
2月前
网页的基本构成元素
网页的基本构成元素 1.2.1文本:清晰明确的展示网页z 1.2.2图片和动画:让网页更加的生动。 1.2.3超链接:引入外链。 1.2.4音频和视频:让网页更加丰富生动。 1.2.5交互表单:个人信息的收集。 1.2.6其他常见元素
42 0
|
8月前
定位网页元素
定位网页元素
|
XML Java 程序员
WPF使用AvalonEdit实现代码高亮显示、搜索、替换功能
很多工程软件拥有自己定义的脚本语言,作为程序员用惯了具有高亮显示和智能提示功能的编辑器,所以针对特定的脚本自己开发一个编辑器。主要采用WPF、C#语言以及AvalonEdit控件。
468 0
WPF使用AvalonEdit实现代码高亮显示、搜索、替换功能
|
前端开发
03 # 网页元素的属性
03 # 网页元素的属性
84 0
|
算法
分页控件和几个相关控件的源代码
分页控件的源代码,可能会让有些人失望,因为代码很乱。乱的一个原因呢,可能是没有采用OO的思路吧,因为写控件的时候还一点都不会OO呢,只是一直在用,也就没有作大的重构。有两个分页控件, 一个是通过PostBack来分页的,一个是通过URL来分页的。
797 0
从模版中找到控件的方法和找到样式的方法
原文:从模版中找到控件的方法和找到样式的方法 this.Style = (Style) App.Current.Resources["BaseWindowStyle"]; 运行下段代码一定要加载样式完成后 i最好是在 Loaded 事件运行完成后加载   ControlTemplate baseWindowTemplate = (ControlTemplate)App.
923 0
|
Android开发
UWP 查找模板中的控件
原文:UWP 查找模板中的控件 这个标题我也不知道咋起,意思说一下你就明白。 1. 对官方控件的模板进行定制修改,以满足多样化需求,还有漂亮的UI 比如ListView,GridView等。 2.
815 0