此控件是结合验证控件来使用的. HTML <form id="form1" runat="server"> <div> <asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <asp:Label ID="lblName" runat="server" Text="名字:"></asp:Label> <asp:TextBox ID="tbxName" runat="server"></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="tbxName" Display="None" ErrorMessage="请输入用户名."></asp:RequiredFieldValidator><br /> <asp:Label ID="lblPhoto" runat="server" Text="电话:"></asp:Label> <asp:TextBox ID="tbxPhoto" runat="server"></asp:TextBox> <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ControlToValidate="tbxPhoto" Display="None" ErrorMessage="请输入用户电话号码."></asp:RequiredFieldValidator> <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="tbxPhoto" Display="None" ErrorMessage="电话号码格式不正确" ValidationExpression="((d{3})|d{3}-)?d{8}"></asp:RegularExpressionValidator> <cc1:ValidatorCalloutExtender ID="ValidatorCalloutExtender1" runat="server" TargetControlID="RequiredFieldValidator1"> </cc1:ValidatorCalloutExtender> </div> <cc1:ValidatorCalloutExtender ID="ValidatorCalloutExtender2" runat="server" TargetControlID="RequiredFieldValidator2"> </cc1:ValidatorCalloutExtender> <cc1:ValidatorCalloutExtender ID="ValidatorCalloutExtender3" runat="server" TargetControlID="RegularExpressionValidator1"> </cc1:ValidatorCalloutExtender> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" /> </Triggers> </asp:UpdatePanel> <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /> </form> 注意: 每一个ValidatorCallout对应着一个"验证控件"来使用. 设置它对应的TargetControlID. 设置"验证控件"对应的服务器控件(TextBox) CS: protected void Button1_Click(object sender, EventArgs e) ...{ this.Label1.Text = tbxName.Text.ToString() + tbxPhoto.Text.ToString(); }