asp.net 学习笔记 向自定义控件传递参数

恩自定义控件

写个东西来复用的感觉。今儿看到这个东西,就觉得这肯定是要用来服用的吧喂,既然要服用就要给参数。不然这玩意不能自定义还复用个屌啊。。。。

首先我们需要一个页面 default

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<%@ Register Src="~/WebUserControl.ascx" TagPrefix="uc1" TagName="WebUserControl" %>


<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <uc1:WebUserControl runat="server" ID="WebUserControl" />
    </div>
    </form>
</body>
</html>

我们可以看到

<uc1:WebUserControl runat="server" ID="WebUserControl" />

这里我们有一个用户控件 WebUserControl 在我们的页面里面引入了这个用户控件 这个时候我们看另外一边,去看看我们的控件内容

先看一眼我们的ascx文件

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserControl.ascx.cs" Inherits="WebUserControl" %>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>

看第3行很明显这个玩意就输出一行文本 由label控件来完成这个事情那么我们的目标是

没有蛀牙(你滚)

我们的目标是让这个空间的输出根据我们default页面传入的参数而变化

那么我们看看空间的cs文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class WebUserControl : System.Web.UI.UserControl
{   
    protected void Page_Load(object sender, EventArgs e)
    {
    }

    public void SetLable(string value)
    {
        this.Label1.Text = value;
    }
}

我们定义了一个

public void SetLable(string value)

方法 这个方法接受一个参数并且把这个参数的值绑定到label上也就是之前的目标 控件功能根据某个值得变化而变化

我们已经明白了控件怎么接收参数 那么我们怎么在default页面传参呢?

现在回头看default 我们来看default的cs文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        this.WebUserControl.SetLable("ddd");
    }
}

这一句

this.WebUserControl.SetLable("ddd");

this.WebUserControl我们获得了我们控件的对象

这个时候后面联想会帮助你找到用户控件里的SetLable赋值方法然后赋值就行。

这样就实现了在总页调用用户自定义控件 并且传入参数操作自定义控件的功能。

(着文件一前一后和PHP差别有点大感觉怪的一逼。。。。。)

你可能感兴趣的:(asp.net 学习笔记 向自定义控件传递参数)