2008-08-27 12 views
0

ビルドしている実際のビルド済みの大規模なASP.NETアプリケーションでMVPパターンを使用し始めましたが、ビューに適用されたイベントを使用する必要があります。どのようにのAutoPostBackイベントがインターフェイスで定義されるべきであるMVPを使用する - テストに適切にイベントを使用する方法

<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="ucTestMVP.ascx.vb" Inherits=".ucTestMVP" %>  
<asp:DropDownList ID="ddlCountry" runat="server" AutoPostBack="True" /> 
<asp:DropDownList ID="ddlCity" runat="server" /> 

:?

は、私は1つが他の値に依存しているユーザーコントロール、中ダウンリスト2のドロップがあると

Public Partial Class ucTestMVP 
    Inherits System.Web.UI.UserControl 
    Implements ITestMVPView 

    Protected Sub PageLoad(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
    If Not Page.IsPostBack Then 
     Dim presenter As New TestMVPPresenter(Me) 
     presenter.InitView() 
    End If 
    End Sub 

    Private Sub ddlCountrySelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ddlCountry.SelectedIndexChanged 
    Dim presenter as New TestMVPPresenter(Me) 
    presenter.CountryDDLIndexChanged() 
    End Sub 

End Class 

またはインタフェースで定義されたイベントが存在する必要があります:それは、このようなユーザーコントロールによって処理されたイベントでなければなりませんか?これが推奨パターンの場合は、どのように処理して使用するイベントを追加しますか?

答えて

2

普遍的に好ましいパターンがあるかどうかわかりません。私は、ビューインターフェースにイベントを追加し、プレゼンターがビューに応答することを好む傾向があります。このパターンはmore detail hereに記載されています。

関連する問題