我用3个文本框制作一个用户控件,具体代码简述为:
.aspx文件
<%@ Page Language="C#" %>
<%@ Register TagPrefix="SuperCompany" TagName="Address"
  Src="AddressProperties.ascx" %><script runat=server>
void Button_Click(Object sender , EventArgs e) 
{
  lblOutput.Text = "<h2>You entered the following values:</h2>";
  lblOutput.Text += "<b>Billing Address:</b>";
  lblOutput.Text += "<li> Street: " + ctlBillingAddress.Street;
  lblOutput.Text += "<li> City: "   + ctlBillingAddress.City;
  lblOutput.Text += "<li> State: "  + ctlBillingAddress.State;
  lblOutput.Text += "<li> ZIP: "    + ctlBillingAddress.ZIP;
  lblOutput.Text += "<p>";
  lblOutput.Text += "<b>Shipping Address:</b>";
  lblOutput.Text += "<li> Street: " + ctlShippingAddress.Street;
  lblOutput.Text += "<li> City: "   + ctlShippingAddress.City;
  lblOutput.Text += "<li> State: "  + ctlShippingAddress.State;
  lblOutput.Text += "<li> ZIP: "    + ctlShippingAddress.ZIP;
}
</Script><html>
<head><title>DisplayAddressProperties.aspx</title></head>
<body>
.ascx文件
<script language="C#" runat=server>public string  Street {
  get {
    return txtStreet.Text;
  }
  set {
    txtStreet.Text = value;
  }
}public string  City {
  get {
    return txtCity.Text;
  }
  set {
    txtCity.Text = value;
  }
}public string  State {
  get {
    return txtState.Text;
  }
  set {
    txtState.Text = value;
  }
}public string  ZIP {
  get {
    return txtZIP.Text;
  }
  set {
    txtZIP.Text = value;
  }
}</Script><p>Street Address:
<br>
<asp:TextBox
  ID="txtStreet"
  Runat="Server" /><p>City:
<br>
<asp:TextBox
  ID="txtCity"
  Runat="Server" /><p>State:
<br>
<asp:TextBox
  ID="txtState"
  Runat="Server" /><p>ZIP:
<br>
<asp:TextBox
  ID="txtZIP"
  Runat="Server" />

解决方案 »

  1.   

    用FindControl的方法,如用户控件的名字是tc1
    那么在也面里面  ((用户控件的类,好象是这个)FinControl("tc1")).属性
      

  2.   

    就像楼主那样写就可以阿,不过你的html代码里面怎么没有那三个控件
    另外建议你用代码后绑定的方式,为什么还用这种古老的方式?
      

  3.   

    用户控件如何获得用户控件中标准控件的属性值?
    ======================================================
    不大明白楼主说的什么意思!用户控件操作放到用户控件中的标准控件和aspx中的操作有区别吗?
      

  4.   

    刚才在HTML里忘写了这两个用户控件,我就是用后绑定代码方式写的,但是调试不通
    <SuperCompany:Address ID="ctlShippingAddress" Runat="Server" />
    <SuperCompany:Address ID="ctlBillingAddress" Runat="Server" />
      

  5.   

    stdio生成的标准控件都是protected的
    你把它改成public 
    然后用FindControl方法就可以去访问其属性了
    今天刚试过 
    我现在遇到的问题是自定义控件中的属性值总是为空
    无法从外面获取到
    郁闷