2017-03-23 7 views
1

(미리 컴파일 된) 사용자 정의 텍스트 상자의 텍스트가 변경되었음을 양식을 통지 여러 프로젝트에서 사용자 정의 텍스트 상자, 그래서 그것을 컴파일하고 DLL로 참조하십시오. 내 프로젝트 중 하나에서이 사용자 지정 텍스트 상자를 사용하는 양식이 있습니다. 사용자 지정 텍스트 상자의 텍스트가 변경 될 때마다 텍스트가 변경되었다는 것을 사용자에게 알릴 수 있도록 부모 폼에 알리고 싶습니다. 나는이 작업을 수행하는 생각할 수C#을 나는하여 RichTextBox에서 파생 된 사용자 지정 텍스트 상자 (승리 양식, 닷넷 2.0)을 만든

protected override void OnTextChanged(EventArgs e) { 
     // notify the parent form somehow that text has changed 
     base.OnTextChanged(e); 
    } 

유일한 방법은 텍스트 변화에 반응하는 부모 폼에 기능을 추가하는 것입니다, 사용자 정의 텍스트 상자에이 함수에 대한 참조 통과 (대리인 등을?) OnTextChanged 안에서 트리거합니다 (대리자가 .NET 2.0에서 작동하는지 잘 모르겠습니다). 더 좋은 방법이 있습니까? 감사.

답변

2

여러분 모두 이미 .NET에 구현하고 싶습니다. RichTextBox은 클래스에 상속 된 공개 이벤트 TextChanged을 가지고 있으며 양식에서이 이벤트를 구독 할 수 있습니다.

public class MyForm 
{ 
    private MyTextBox _textBox; 
    .... 

    public MyForm() 
    { 
     InitializeComponent(); 
     _textBox = new MyTextBox(); 
     _textBox.TextChanged += (s, e) => {...}; 
     .... 
    } 
} 
+0

소리가 충분히 간단합니다. 감사. – MrSparkly