1

.NET2 時代の C# を .NET2 時代の VB.NET に移植するのに問題があります。具体的には、ASP.NET ユーザー コントロールが実装するインターフェイスを定義しようとしています。

(背景として、数年前の Phil Haack の Model-View-Presenter の例を再実装しようとしています。)

私が作業している C# インターフェイスは、基本コントロールによって既に実装されているプロパティとイベント (IsPostBack、Load) を定義します。

ただし、VB.NET では、これらのプロパティ/イベントをユーザー コントロールに明示的に実装する必要があります (Public Property IsPostBack() As Boolean Implements IView.IsPostBack...)。インターフェイスでこれらを定義するだけで、実装するユーザー コントロールのコード ビハインドで特別なことをする必要はありません。

VB.NETでこれを行うことができると仮定していますが、方法がわかりません。私はあらゆる種類のグーグル/ビングを費やしてきましたが、答えは出ていません。

誰にもアイデアはありますか?

4

1 に答える 1

3

残念ながら、これは VB.NET でできることではありません。VB.NET は明示的なインターフェイスの実装のみを行うため、次のようにする必要があります。

Public Class MyPage
    Inherits Page
    Implements IView

    Public ReadOnly Property IsPostBack() As Boolean Implements IView.IsPostBack
        Get
            Return MyBase.IsPostBack
        End Get
    End Property
End Class

Public Interface IView
    Public ReadOnly Property IsPostBack() As Boolean
End Interface

そのため、これらのインターフェイス メンバーをすべて再度実装する必要があります。

于 2012-05-02T13:06:36.577 に答える