2015-05-12 2 views
0

Существует пользовательский элемент управления - ChildUC.ascx со свойством "ПгвЬЫате"Найти недвижимость суб ребенка UserControl в ASPX странице

ChildUC.ascx

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="ChildUC.ascx.cs" Inherits="SampleDevExpress14._2.UserControls.ChildUC" %> 
<asp:TextBox runat="server" ID="txtName"></asp:TextBox> 
<asp:Button runat="server" ID="btnClick" Text="Click" OnClick="btnClick_Click"/> 

ChildUC.ascx. cs - Это имущество Первый номер

public partial class ChildUC : System.Web.UI.UserControl 
    { 
     public string FirstName { get; set; } 
    } 

Этот контроль пользователя ChildUC.ascx используется в другой пользовательский элемент управления ParentUC.ascx -

ParentUC.ascx

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="ParentUC.ascx.cs" Inherits="SampleDevExpress14._2.UserControls.ParentUC" %> 
<%@ Register src="ChildUC.ascx" tagPrefix="uc1" tagName="ChildUC" %> 

<uc1:ChildUC runat="server" ID="ucChildUC"/> 

ParentUC.ascx используется в ParentPage.aspx

ParentPage.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ParentPage.aspx.cs" Inherits="SampleDevExpress14._2.UserControls.ParentPage" %> 
<%@Register src="ParentUC.ascx" tagPrefix="uc1" tagName="ParentUC" %> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <uc1:ParentUC runat="server" ID="ucParentUC"/>  
    </div> 
    </form> 
</body> 
</html> 

ParentPage.aspx.cs

protected void Page_Load(object sender, EventArgs e) 
     { 
      UserControl ucChild = (UserControl)ucParentUC.FindControl("ucChildUC"); 
      TextBox txtNameOfChildUC = (TextBox)ucChild.FindControl("txtName"); 
      txtNameOfChildUC.Text = "From Parent Page"; 
     } 

Я могу найти текстовое поле контроль ChildUC.ascx в ParentPage.aspx которые я показал выше в Page_Load event

Но как я могу найти FirstName Достояние ChildUC.ascx в ParentPage.aspx и установить значение этого.

спасибо.

ответ

1

Попытка с помощью динамической,

dynamic u = (UserControl)ParentControl.FindControl("childcontrol"); 
    u.firstname = "fawad"; 
    Response.Write(u.firstname); 
Смежные вопросы