上一步和下一步、完成

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="CSASPNETEmailAddresseValidator.Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>CSASPNETEmailAddressValidator</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Wizard ID="ValidationWizard" runat="server" Width="700px" ActiveStepIndex="0"
            BackColor="#F7F6F3" BorderColor="#CCCCCC" BorderStyle="Solid" BorderWidth="1px"
            Font-Names="Verdana" Font-Size="0.8em" 
            OnNextButtonClick="ValidationWizard_OnNextButtonClick" 
            onfinishbuttοnclick="ValidationWizard_FinishButtonClick" 
            FinishCompleteButtonText="完成" FinishPreviousButtonText="上一步" 
            StartNextButtonText="下一步" StepPreviousButtonText="上一步">
            <HeaderStyle BackColor="#5D7B9D" BorderStyle="Solid" Font-Bold="True" Font-Size="0.9em"
                ForeColor="White" HorizontalAlign="Left" />
            <HeaderTemplate>
                <h2>
                    使用验证邮件来验证邮箱地址的可用性</h2>
            </HeaderTemplate>
            <NavigationButtonStyle BackColor="#FFFBFF" BorderColor="#CCCCCC" BorderStyle="Solid"
                BorderWidth="1px" Font-Names="Verdana" Font-Size="0.8em" ForeColor="#284775" />
            <SideBarButtonStyle BorderWidth="0px" Font-Names="Verdana" ForeColor="White" />
            <SideBarStyle BackColor="#7C6F57" BorderWidth="0px" Font-Size="0.9em" VerticalAlign="Top" />
            <StepStyle BorderWidth="0px" ForeColor="#5D7B9D" />
            <WizardSteps>
                <asp:WizardStep ID="WizardStep1" runat="server" Title="登录SMTP服务器">
                    <table>
                        <tr>
                            <td align="right" style="width: 200px;">
                                发送邮箱主机:
                            </td>
                            <td style="width: 300px;">
                                <asp:TextBox ID="tbHost" runat="server" Text="smtp.live.com"></asp:TextBox>
                            </td>
                        </tr>
                        <tr>
                            <td align="right" style="width: 200px;">
                                发送邮箱地址:
                            </td>
                            <td style="width: 300px;">
                                <asp:TextBox ID="tbSendMail" runat="server" Text="@hotmail.com"></asp:TextBox>
                            </td>
                        </tr>
                        <tr>
                            <td align="right">
                                发送邮箱密码:
                            </td>
                            <td>
                                <asp:TextBox ID="tbSendMailPassword" TextMode="Password" runat="server"></asp:TextBox>
                            </td>
                        </tr>
                        <tr>
                            <td align="right">
                                是否使用SSL:
                            </td>
                            <td>
                                <asp:CheckBox ID="chkUseSSL" Checked="true" runat="server" 
                                    OnCheckedChanged="chkUseSSL_CheckedChanged" />
                            </td>
                        </tr>
                        <tr>
                            <td colspan="2">
                                描述:<br />这里有一个SMPTP服务器和你将会用来发送验证邮件的邮箱地址.
                            </td>
                        </tr>
                    </table>
                </asp:WizardStep>
                <asp:WizardStep ID="WizardStep2" runat="server" Title="邮箱验证">
                    <table width="100%">
                        <tr>
                            <td>
                                <asp:Label runat="server" ID="lbMessage"></asp:Label>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                需要验证的邮箱地址:<br />
                                <asp:TextBox runat="server" ID="tbValidateEmail" Width="100%"></asp:TextBox>
                            </td>
                        </tr>
                        <tr>
                            <td>
                                <asp:Button runat="server" ID="btnValidate" Text="开始验证邮箱地址"
                                    OnClick="btnValidate_Click" />
                                <asp:Button runat="server" ID="btnSendAgain" Visible="false" Text="再发一封邮件到你的邮箱"
                                    OnClick="btnSendEmailAgain_Click" />
                            </td>
                        </tr>
                    </table>
                </asp:WizardStep>
            </WizardSteps>
        </asp:Wizard>
    </div>
    </form>
</body>
</html>



/****************************** 模块头 ******************************\
* 模块名:    Default.aspx.cs
* 项目名:    CSASPNETEmailAddresseValidator
* 版权 (c) Microsoft Corporation
*
* 本项目阐述了如何发送一封确认的邮件去检查一个邮件地址的可用性.
* 
* 在本文件中,我们创建一些控件来调用发送确认邮件的代码.
* 
* This source is subject to the Microsoft Public License.
* See http://www.microsoft.com/opensource/licenses.mspx#Ms-PL.
* All other rights reserved.
*
\*****************************************************************************/

using System;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using CSASPNETEmailAddresseValidator.Module;

namespace CSASPNETEmailAddresseValidator
{
    public partial class Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        // 如果我们单击验证按钮, 它将会开始发送验证邮件.
        protected void btnValidate_Click(object sender, EventArgs e)
        {
            btnSendAgain.Visible = false;
            try
            {

                // 实例化一个EmailValidation类,准备开始发送确认邮件.
                EmailValidation validator = new EmailValidation(
                    tbSendMail.Text,
                    Session["password"].ToString(),
                    tbHost.Text,
                    chkUseSSL.Checked);

                // 调用StartToValidateEmail方法验证邮箱地址并且发送确认邮件.
                ValidateEmailResult rsl =
                    validator.StartToValidateEmail(tbValidateEmail.Text);
                switch (rsl)
                {
                    case ValidateEmailResult.EmailStartToValidate:
                        lbMessage.Text =
                            "验证邮件已经成功发送." +
                            "请在邮箱查收.";
                        btnSendAgain.Visible = true;
                        break;
                    case ValidateEmailResult.EmailValidated:
                        lbMessage.Text = "此邮箱已经通过验证.";
                        break;
                    case ValidateEmailResult.EmailValidating:
                        lbMessage.Text = "此邮箱正在等待用户" +
                            "在邮件中点击确认链接结束验证";
                        btnSendAgain.Visible = true;
                        break;
                }
            }
            catch (Exception err)
            {
                lbMessage.Text = "错误:" + err.Message;
            }
        }

        // 如果我们已经发送了确认邮件,但是用户仍然没有收到 
        // 邮件,我们可以允许他进行重发.
        protected void btnSendEmailAgain_Click(object sender, EventArgs e)
        {
            try
            {

                // 实例化一个EmailValidation类,准备再次发送确认邮件.
                EmailValidation validator = new EmailValidation(
                    tbSendMail.Text,
                    Session["password"].ToString(),
                    tbHost.Text,
                    chkUseSSL.Checked);

                // 使用ReSendValidationEmail方法再次发送确认邮件.
                validator.ReSendValidationEmail(tbValidateEmail.Text);
                lbMessage.Text = "邮件已经再次发送. 请再次查收.";
            }
            catch (Exception err)
            {
                lbMessage.Text = "错误:" + err.Message;
            }
        }

        protected void ValidationWizard_OnNextButtonClick(object sender,
                                                WizardNavigationEventArgs e)
        {
            if (e.CurrentStepIndex == 0)
            {
                Session["password"] = tbSendMailPassword.Text;
            }
        }

        protected void ValidationWizard_FinishButtonClick(object sender, WizardNavigationEventArgs e)
        {

        }

        protected void chkUseSSL_CheckedChanged(object sender, EventArgs e)
        {

        }
    }
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值