1

asp:ChangePassword コントロールにカスタム検証コントロールを使用する方法についてのアイデアを探しています。asp:CustomValidate コントロールで "ControlToValidate" プロパティを設定しようとすると、次のようになります。

「passwordValidation」の ControlToValidate プロパティによって参照されるコントロール「changePassword1」を検証できません。

ありがとう。

4

4 に答える 4

2

このエラー メッセージにつながる根本的な問題は、ChangePassword コントロールにクラス レベルで設定された「ValidationProperty」属性がないことです。前述のように、CustomValidator から ControlToValidate 属性を省略できます。これはおそらく、ChangePassword コントロールの最適な計画です。

カスタム コントロールで CustomValidator を使用しようとしている場合は、カスタム コントロールのクラスに ValidationProperty を設定します。

[DefaultProperty("StateName"), ValidationProperty("StateName")]
public class StateBox: CompositeControl
{
    ...

ValidationProperty 属性が設定されていないライブラリ コントロールで CustomValidator を使用する場合は、ライブラリ コントロールからクラスを派生させ、派生クラスに ValidationProperty を設定します。

于 2009-07-22T12:34:08.790 に答える
0

はい、テンプレートを使用してください:

http://quickstarts.asp.net/QuickStartv20/util/srcview.aspx?path=~/aspnet/samples/ctrlref/login/ChangePasswordTemplates.src

http://quickstarts.asp.net/quickstartv20/aspnet/doc/ctrlref/login/changepassword.aspx

textbox-id が "Username" (または検証したいもの) である限り、任意の種類のバリデーターをテンプレートに追加できます。

于 2009-05-29T00:53:31.677 に答える