Share via


CreateUserWizard.OnCreatingUser(LoginCancelEventArgs) 方法

定義

在呼叫成員資格提供者以建立新的使用者帳戶之前,引發 CreatingUser 事件。

protected:
 virtual void OnCreatingUser(System::Web::UI::WebControls::LoginCancelEventArgs ^ e);
protected virtual void OnCreatingUser (System.Web.UI.WebControls.LoginCancelEventArgs e);
abstract member OnCreatingUser : System.Web.UI.WebControls.LoginCancelEventArgs -> unit
override this.OnCreatingUser : System.Web.UI.WebControls.LoginCancelEventArgs -> unit
Protected Overridable Sub OnCreatingUser (e As LoginCancelEventArgs)

參數

e
LoginCancelEventArgs

包含事件資料的 LoginCancelEventArgs

範例

下列程式碼範例會定義自訂控制項,這個控制項 CreateUserWizard 會使用 OnCreatingUser 方法將 屬性設為 UserName 全部小寫。

using System;
using System.Web;
using System.Web.UI.WebControls;
using System.Security.Permissions;

namespace Samples.AspNet.CS.Controls {
  [AspNetHostingPermission(System.Security.Permissions.SecurityAction.Demand,Level = AspNetHostingPermissionLevel.Minimal)]
  [AspNetHostingPermission(System.Security.Permissions.SecurityAction.InheritanceDemand,Level = AspNetHostingPermissionLevel.Minimal)]
  public class CustomCreateUserWizard : CreateUserWizard {

    protected override void OnCreatingUser(LoginCancelEventArgs e) {
      this.UserName.ToLower();
      base.OnCreatingUser(e);
    }
  }
}
Imports System.Web
Imports System.Web.UI.WebControls
Imports System.Security.Permissions

Namespace Samples.AspNet.VB.Controls
  <AspNetHostingPermission(System.Security.Permissions.SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
  <AspNetHostingPermission(System.Security.Permissions.SecurityAction.InheritanceDemand, Level:=AspNetHostingPermissionLevel.Minimal)> _
  Public Class CustomCreateUserWizard
    Inherits CreateUserWizard
    
    Overloads Sub OnCreatingUser(ByVal e As LoginCancelEventArgs)
      Me.UserName.ToLower()
      MyBase.OnCreatingUser(e)
    End Sub    
    
  End Class
End Namespace

下列程式碼範例示範使用 的 CustomCreateUserWizard 網頁。

<%@ Page Language="C#"%>
<%@ Import namespace="Samples.AspNet.CS.Controls" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void Page_Load(object sender, EventArgs e)
  {
    CustomCreateUserWizard createUser = new CustomCreateUserWizard();
    Placeholder1.Controls.Add(createUser);
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>CreateUserWizard.OnCreatingUser sample</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:placeholder id="Placeholder1" runat="server">
      </asp:placeholder>
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB"%>
<%@ Import namespace="Samples.AspNet.VB.Controls" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
  
  Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
    Dim createUser As New CustomCreateUserWizard
    Placeholder1.Controls.Add(createUser)
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>CreateUserWizard.OnCreatingUser sample</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:placeholder id="Placeholder1" runat="server">
      </asp:placeholder>
    </div>
    </form>
</body>
</html>

備註

OnCreatingUser使用 方法,在將新使用者資訊傳送至 CreateUser 屬性中所 MembershipProvider 指定成員資格提供者的 方法之前,先執行任何必要的處理。 例如,您可以將使用者名稱欄位設定為所有小寫字母,或先比較電子郵件地址與受限制位址的清單,再允許建立使用者帳戶。

如果您需要取消要求以建立新的使用者帳戶,請將傳遞為 e 參數的物件 LoginCancelEventArgs 屬性設定 Canceltrue

引發事件會透過委派叫用此事件處理常式。 如需詳細資訊,請參閱 處理和引發事件

OnCreatingUser 方法也允許衍生類別處理事件,而不用附加委派。 這是在衍生類別中處理事件的慣用技巧。

給繼承者的注意事項

OnCreatingUser(LoginCancelEventArgs) 衍生類別中覆寫時,請務必呼叫基類的 OnCreatingUser(LoginCancelEventArgs) 方法,讓已註冊的委派接收事件。

適用於

另請參閱