DevExpress社ASP.NETの入力チェック処理について

DevExpress社のASP.NETを利用して、入力チェック処理を実装する場合、クライアント側、サーバー側の双方で実装が可能です。
個人的には、クライアント側(javascript)が苦手なので、全てサーバー側(c#)でチェックをしたいところですが、全てサーバー側(c#)で実装する場合は、無駄にサーバーへのリクエストが多くなるので、双方でチェックを実装しようとしたのですが…

いつも使用しているWinFormsと違い、ASP.NETは、結構難しく、色々試してやっとこさ実装方法が分かったので、備忘録として残しておきます。

注意点は以下の通りです。

  • クライアント側は、ValidationSettingsを利用し、必須チェックや文字チェックを行う
  • ValidationSettingsでは、ValidationGroupを設定しておく
  • クライアント側のイベントが無視されるので、ボタンのイベントであるOnClickは使用しない。
  • コールバック用のパネル(ASPxCallbackPanel)を用意する
  • サーバー側の処理を実行するため、PerformCallbackメソッドを使用した関数を用意する。
  • ボタンがクリックされたら、クライアントで上記関数を呼び出す。

以下、設定例です。必要な個所のみに抜粋しています。

LoginPage.aspx

LoginPage.aspx.cs

以下、クライアント側のチェック結果の画面イメージです。クライアントのエラーがなくなるまで、サーバーへのリクエストが発生しません。

以下、サーバー側のチェック結果の画面イメージです。

Print Friendly, PDF & Email

シェアする

  • このエントリーをはてなブックマークに追加

フォローする