ascx如何访问aspx页面


 

有两种方法,

1)sp.net服务器控件结构有点如同dom的树结构,是有层次的。然后this.parent.

如下ascs中的按钮代码:

  private void btnShow_Click(object sender, System.EventArgs e)
  {
   ((Button)sender).Parent.Parent.FindControl("btnContorl").Visible=true;
  }

  private void Button1_Click(object sender, System.EventArgs e)
  {
   this.Parent.FindControl("btnContorl").Visible=false;
  }

 private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   //注册用户控件事件
   this.WebUserControl11.LogInOutClick +=new LogInOutClickHandler(WebUserControl11_LogInOutClick);
  }

 

  private void WebUserControl11_LogInOutClick(object sender, EventArgs e)
  {
   Button button1 = (Button)sender;
   switch(button1.Text)
   {
    case "show":
     this.Button1.Visible = true;
     break;
    case "hide":
     this.Button1.Visible = false;
     break;
   }

  }

****************************************************

ascx中的代码

 // 定义代理
 public delegate void LogInOutClickHandler(object sender,System.EventArgs e);

 public{
  protected System.Web.UI.WebControls.Button Button1;
  protected System.Web.UI.WebControls.Button Button2;
  public event LogInOutClickHandler LogInOutClick;
 

  private void OnLogInOutClick(object sender,System.EventArgs e)
  {
   if(LogInOutClick!=null)
    LogInOutClick(sender,e);
  }
  private void Button1_Click(object sender, System.EventArgs e)
  {
   OnLogInOutClick(sender,e);
  }

  private void Button2_Click(object sender, System.EventArgs e)
  {
   OnLogInOutClick(sender,e);
  }

对于aspx访问ascx更简单了,

方法如下。将ascx定义为public或protect即可,

如是  webControl objwebControl;
objwebControl.Method();
objwebControl.I;
(((TextBox)objwebControl.FindControl("TextBox1")).Text="abc";)

或objwebControl.Controls["0"].;  

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值