[ASP.NET2.0]二个自己定义控件之间的传值

来源:互联网 发布:淘宝评价是显示几个月 编辑:程序博客网 时间:2024/05/29 11:48



目的:
实现 Index.aspx 页面中 自己定义控件 UC1.ascx 中的 TextBox1 的值 传给自己定义控件 UC2.ascx 的 Label 

效果图如下:

具体实现如下:

UC1.ascx

<%@ Control Language="C#" ClassName="UC1" %>

<script runat="server">

    public delegate 
void UC1ClickActionEventHandler(string text);

    public event UC1ClickActionEventHandler GetTextBoxValue;
    
    protected 
void Button1_Click(object sender, EventArgs e)
    {
        GetTextBoxValue(TextBox1.Text);
    }
    
</script>

自己定义控件一:
<br />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button1" />

UC2.ascx

<%@ Control Language="C#" ClassName="UC2" %>

<script runat="server">

</script>

自己定义控件二:
<br />
<br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>


Index.aspx

<%@ Page Language="C#" %>

<%@ Register Src="UC1.ascx" TagName="UC1" TagPrefix="uc1" %>
<%@ Register Src="UC2.ascx" TagName="UC2" TagPrefix="uc2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    protected 
void SetUC2Lable(string text)
    {
        ((Label)UC2_1.FindControl(
"Label1")).Text = text; 
    }
    
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>二个自己定义控件之间的传值</title>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
<uc1:UC1 ID="UC1_1" runat="server" OnGetTextBoxValue="SetUC2Lable" />
        
<br />
        将自定义控件一中TextBox1的值传到自定义控件二的Lable1
        
<br />
        
<br />
        
<uc2:UC2 ID="UC2_1" runat="server" />
        
&nbsp;</div>
    
</form>
</body>
</html>
原创粉丝点击