asp.net 學習筆記 向自定義控件傳遞參數

恩自定義控件html

寫個東西來複用的感受。今兒看到這個東西,就以爲這確定是要用來服用的吧喂,既然要服用就要給參數。否則這玩意不能自定義還複用個屌啊。。。。c#

首先咱們須要一個頁面 defaultui

<%@ 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>

咱們能夠看到this

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

這裏咱們有一個用戶控件 WebUserControl 在咱們的頁面裏面引入了這個用戶控件 這個時候咱們看另一邊,去看看咱們的控件內容code

先看一眼咱們的ascx文件orm

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

看第3行很明顯這個玩意就輸出一行文本 由label控件來完成這個事情那麼咱們的目標是server

沒有蛀牙(你滾)xml

咱們的目標是讓這個空間的輸出根據咱們default頁面傳入的參數而變化htm

那麼咱們看看空間的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差異有點大感受怪的一逼。。。。。)

相關文章
相關標籤/搜索