当然是对所有控件进行遍历了,判断控件的类型如果是textbox的话,则进行操作。

解决方案 »

  1.   

    <%@ Page language="c#" Codebehind="WebForm1.aspx.cs" Src="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="Lion.Web.Forum.WebForm1" %>
    <HTML>
    <HEAD>
    <title>Lion互动网络</title>
    </HEAD>
    <body>
    <form id="Form1" method="post" runat="server">
    <asp:TextBox id="TextBox1" runat="server"></asp:TextBox>
    <asp:TextBox id="TextBox2" runat="server"></asp:TextBox>
    </form>
    </body>
    </HTML>using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Web;
    using System.Web.SessionState;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.HtmlControls;namespace Lion.Web.Forum
    {
    /// <summary>
    /// WebForm1 的摘要说明。
    /// </summary>
    public class WebForm1 : System.Web.UI.Page
    {
    protected System.Web.UI.WebControls.TextBox TextBox1;
    protected System.Web.UI.WebControls.TextBox TextBox2;

    private void Page_Load(object sender, System.EventArgs e)
    {
    //Response.Write(()+"<br>");
    foreach(Control cl in Page.Controls[1].Controls)
    {
    if(cl.ToString()=="System.Web.UI.WebControls.TextBox")
    Response.Write(cl.ClientID+"<br>");
    }
    } #region Web 窗体设计器生成的代码
    override protected void OnInit(EventArgs e)
    {
    //
    // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
    //
    InitializeComponent();
    base.OnInit(e);
    }

    /// <summary>
    /// 设计器支持所需的方法 - 不要使用代码编辑器修改
    /// 此方法的内容。
    /// </summary>
    private void InitializeComponent()
    {    
    this.Load += new System.EventHandler(this.Page_Load); }
    #endregion
    }
    }
      

  2.   

    foreach(Control c in Page.FindControl("Form1").Controls)
    {
    if(c.GetType() == new TextBox().GetType())
    {
    ((TextBox)c).ReadOnly = true;
    }
    }
    其中Page.FindControl("Form1")中的"Form1"中你的aspx页面中From的ID
      

  3.   

    to:7710703(易水寒)
    dim t as textbox
     for each t in page.controls //提示错误:指定类型转换无效
             t.readonly =true 
          next
    有问题吗?
      

  4.   

    to: lrxz(九月鹰飞.Net) 
       用vb怎么写?
      

  5.   

    dim t as textbox
     for each t in page.controls //提示错误:指定类型转换无效
             t.readonly =true 
          next
    -------------------
    Dim c AS Control
    For Each c In Page.Controls[1].Controls
        If (c Is TextBox)
            Ctype(c,TextBox).ReadOnly=True
        End If
    Next
      

  6.   

    同意acewang(龍芯*Inside!)
      

  7.   

    acewang(龍芯*Inside!)说的没错。
    但是你要保证你的form里面没有pannel等容器控件里面没有用textbox,否则的话也要对容器控件进行遍历。
    对容器控件的遍历可直接调用他的controls属性即可。
      

  8.   

    foreach(Control c in Page.Controls[1].Controls)
    {
             if(c.GetType() == new TextBox().GetType())
    {
    ((TextBox)c).ReadOnly = true;
    }}