|
<< Click to Display Table of Contents >> UserControl - criando propriedades |
![]() ![]()
|
Pessoa.ascx
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="Pessoa.ascx.cs" Inherits="Pessoa" %>
<div style="background-color: #eeffc4; border: 1px solid #c0c0c0;">
<div style="margin: 10px;">
Este é um UserControl<hr />
Nome: <asp:Label ID="lblNome" runat="server" Font-Bold="true"></asp:Label><br />
Cidade: <asp:Label ID="lblCidade" runat="server" Font-Bold="true"></asp:Label><br />
Idade: <asp:Label ID="lblIdade" runat="server" Font-Bold="true"></asp:Label><br />
</div>
</div>
Pessoa.ascx.cs
using System;
public partial class Pessoa : System.Web.UI.UserControl
{
public string Nome { get; set; }
public string Cidade { get; set; }
public string Idade { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Aplicar();
}
}
// método que joga o valor das propriedades para os labels
public void Aplicar()
{
lblNome.Text = Nome;
lblCidade.Text = Cidade;
lblIdade.Text = Idade;
}
}
Default.aspx
<form id="form1" runat="server">
<uc1:Pessoa ID="Pessoa1" runat="server" Nome="Junior"/> <---- dá pra setar direto no aspx o DEFAULT
<br />
</form>
Default.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
// no load, primeira vez coloca meus dados
SetarPropriedades();
}
}
void SetarPropriedades()
{
Pessoa1.Nome = "Flávio";
Pessoa1.Cidade = "Floripa";
Pessoa1.Idade = "34";
}
// no clique do botão coloca outros dados
protected void btnChange_Click(object sender, EventArgs e)
{
Pessoa1.Nome = "Angelina";
Pessoa1.Cidade = "Nova York";
Pessoa1.Idade = "37";
Pessoa1.Aplicar();
}