2012-04-09 5 views
0

C# Windows 폼에서 모델 뷰 표현 자 패턴을 구현하려고합니다. 여러 가지 방법을 시도했지만 이것을 알아 내지 못했습니다. 사용자가 텍스트 상자를 클릭하면 텍스트 상자에서 사용자 입력을 "수락"할 수 있습니까? 없는 경우, 발표자에게 데이터를 전달하는 일반적인 방법은 무엇입니까? 텍스트 상자의 on_text_changed 이벤트를 사용할 수는 있지만 데이터를 검증하는 방법에 대해 혼란스러워합니다.텍스트 상자에서 입력을 받아들이는 방법

답변

0

당신은 Leaveevent을 듣고 싶을 것입니다. 그 텍스트 상자에 초점을 잃을 때 일어날; 그 후에, 당신은 당신의 검증을 할 수 있습니다.

1

나는이 스레드가 너무 오래되었지만 여전히 알고 있습니다.

public interface IProjectView 
{ 
    string textBoxText{get;} 
} 

public class ProjectView : IProjectView 
{ 
    ProjectPresenter _presenter; 

    public ProjectView() 
    { 
     _presenter = new ProjectPresenter(this); 
    } 

    string textBoxText 
    { 
     get 
     { 
      // Do validation if you want 
      return textBox1.Text; 
     } 
    } 
} 


class ProjectPresenter 
{ 
    IProjectView _view; 
    public ProjectPresenter(IProjectView view) 
    { 
     _view = view; 
    } 

    public void AnyMethod() 
    { 
     // Access value of textbox as _view.txtTextBoxText 
    } 
} 

Projectview로

에서 테스트되지 않은 코드를 구현하지만, 잘 작동합니다.

유효성 확인과 관련하여 ProjectView에서 속성을 구현하는 동안 값을 반환하기 전에 유효성 검사를 수행하십시오.

관련 문제