2008-08-27 22 views
0

Yeni oluşturduğum büyük ASP.NET uygulamasında MVP şablonunu kullanmaya başladım (aslında yeniden oluşturma) ve nasıl çalıştığımı anlamakta zorlanıyorum Görünüme uygulanan Olayları kullanmalıyım. MVP'yi Kullanma - Olayları Düzgün Olarak Test Etmek İçin Olayları Kullanma

biri diğerinin değerine bağımlı olduğu, bir kullanıcı denetimi listeleri aşağı 2 damla olduğunu varsayalım:
<%@ 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" /> 

Nasıl AutoPostBack Olay arayüzde tanımlanmalıdır?

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 

Veya bir olay Arayüz orada tanımlanmalıdır: Böyle Kullanıcı Kontrol tarafından işlendiğini bir olay olmalı mı? Tercih edilen kalıp bu ise, ele alınacak ve kullanılacak olayları nasıl ekleyebilirim?

cevap

2

Evrensel olarak tercih edilen bir desen olup olmadığını bilmiyorum. Olayı görüntüleme arayüzüne eklemeyi ve sunum yapan kişinin görüşe yanıt vermesini tercih ediyorum. Bu deseni more detail here'da açıkladım.