2011年1月24日月曜日

【VB.NET】Formを継承した場合にデザイン時でも継承元のLoadイベント実行への対処

Formを継承すると
なんと、継承元のFormに存在するLoadイベントが
継承したFormのデザイン時に自動実行されてしまいます。
これは私もハマりました。。


継承元のLoadイベントにて、ユーザー名の取得や画面名の取得、権限コードの取得など
データベースのデータを取得するコードを記述していると具合が悪いです。

その場合、デザイン時は処理したくないので、以下のコードを継承元FormのLoadイベントの最初に挿入します。

Private Sub FormName_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        'デザイン時は処理しない
        If AppDomain.CurrentDomain.FriendlyName = "DefaultDomain" Then
            Exit Sub
        End If
End Sub

これで継承元のLoadイベントがデザイン時に動きません。

0 件のコメント:

コメントを投稿