0

「パスワード変更」オプションを使用して「管理者」と「学生」の2つの異なるフォームを作成し、ユーザーに「新しいパスワード」を要求し、ユーザーが「パスワード変更」オプションをクリックすると開く別のフォームを作成しました「管理者」または「学生」フォームで。

「管理者」フォームまたは「学生」フォームのリンクをクリックして、「新しいパスワード」フォームが開いているかどうかを確認する方法があれば教えてください。管理者メニューの「パスワード変更」リンクをクリックして「新しいパスワード」フォームを開いた場合は、管理者のパスワードを更新し、生徒フォームから「新しいパスワード」フォームを開いた場合は、生徒のパスワードを更新します。

4

5 に答える 5

1

個人的にはNewPassword、プロパティを確認する必要がある if 句の量が膨大になる可能性があるため、2 つのサブクラスを作成します。

AdminNewPassword : NewPassword
StudentNewPassword : NewPassword

その後、すべてのロジックを新しいパスワードに含めることができますが、別の方法で処理する必要がある場合は、それぞれのフォームに入れることができます。

次に、管理者の場合は、 new AdminNewPassword.. Student -を呼び出します。StudentNewPassword

于 2013-07-21T08:12:53.337 に答える
0

簡単な解決策は、モードの名前で「新しいパスワード」フォームにプロパティを追加することです。

class NewPassword()
{
   ...
   public string Mode {get;set;}
   ...
}

ShowDialog メソッドを呼び出す前に、まずこのプロパティを設定します。

于 2013-07-21T07:32:27.883 に答える
0

簡単な解決策は、新しいパスワード フォームにパブリック プロパティを実装し、開始フォームから設定することです。次に、新しいパスワード フォームからその内容を確認できます。

新しいパスワードの形式:

public string Opener;

if(Opener == "admin")
  // set admin password
else
  // set student password

他の形式では:

FrmNewPassword frmPasswd = new FrmNewPassword();
   frmPasswd.Opener = "admin"; // or frmPasswd = "student";
   frmPasswd.Show();
于 2013-07-21T07:34:24.810 に答える
0

「新しいパスワード」フォームにパブリック プロパティを設定し、フォームを開く前にどのフォームからでも設定することができます。オブジェクトまたは文字列、または必要なタイプのいずれかで実行できます。

于 2013-07-21T07:34:53.280 に答える