从自定义控件获取值

时间:2014-04-09 13:53:47

标签: c# asp.net

在下面的代码中,我有用户控件,如文本框,下拉列表,复选框等,我将其绑定到数据列表。现在我已将控件引用到.aspx网页,现在我的目标是在.aspx页面中获取自定义控件的值。请帮我这样做。我的目标是从.aspx中的usercontrols获取文本框,下拉列表,复选框的值。

GmatField.ascx

<asp:TextBox ID="txtField" runat="server" width="200Px" CssClass="style22"  ></asp:TextBox>
<asp:DropDownList ID="cbField" runat="server" width="200Px" >
</asp:DropDownList>
<asp:CheckBox ID="chField" runat="server" width="200Px"  />

GmatField.ascx

<%@ Register TagPrefix="gmat" TagName="FieldCont" Src="~/Search/GmatField.ascx" %>

<asp:DataList ID="dlFields" runat="server"  Height="100px" 
    Width="50px" BorderColor="Beige">
    <ItemTemplate>
        <gmat:FieldCont ID="gmatFieldCont" runat="server" />
    </ItemTemplate>
</asp:DataList>

NewDocument.aspx

<%@ Register TagPrefix="gmat" TagName="GmatFieldsControl" Src="~/Search/GmatFields.ascx" %>
    <gmat:GmatFieldsControl ID="gmatFieldsContr" runat="server" />

1 个答案:

答案 0 :(得分:0)

简单。

创建一个公共属性,从textbox或selectedItem下拉列表中获取值 然后,从实现该用户控件的页面,您可以访问该属性:

// usercontrol:
public string TxtField
{
   get 
   {
      return this.txtField.Text;
   }
}

// from the ASPX page that implements the usercontrol:

string txtFieldValue = this.gmatFieldsContr.TxtField;