直接用this.Textbox1和 ( (TextBox)FindControl("TextBox1") ).Text有什么区别?

 我来答
aino77
2010-09-10 · TA获得超过920个赞
知道小有建树答主
回答量:378
采纳率:0%
帮助的人:289万
展开全部
前者:在界面以定义的对象.直接使用.如果能直接获取对象,一般则不使用后面的方法.

后者:FindControl从这个函数名称就可以猜到,是在页面循环查找名称与参数相同的控件,然后再转换成相应的类型.因为多了遍历查找与类型转换两个步骤,所以执行效率要比第一种方式低许多.而且还可能引起因类型转换,和FindControl("")==null而引起的错误.这种方式获取对象一般是要在容器控件(窗体也是容器)内的子控件的时候使用.此方法,只能查找到容器控件内的子控件(直属),查不到所属当前控件的子容器内的控件.
dragon2snow
2010-09-10 · TA获得超过1099个赞
知道小有建树答主
回答量:1150
采纳率:0%
帮助的人:1140万
展开全部
在asp.net里,区别不大
但前者是已经知道有这个
后者可能会出现异常,如类型转换异常等
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1395306465
2010-09-10
知道答主
回答量:5
采纳率:0%
帮助的人:0
展开全部
FindControl最常用的地方是在gridview那种类似容器的控件里面、和masterPage这中有模板页的页面里。
用在普通的页面中根本就没有意义。还不如直接敲上TextBox1来的方便,除非你想写个方法根据控件名字的字符串找那个控件。然后实现对名字类似的控件进行循环控制。比如找TextBox1……TextBox5……,然后对里面的数据进行相同的处理。
不过那样虽然能行,但是实现起来却是个麻烦。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式