2013-03-22 1 views
0

현재 사용자가 긴 메시지를 입력 할 수있는 양식을 구현 중입니다. 이 응용 프로그램의 경우 사용자의 텍스트에는 미리 설정된 텍스트가 끝에 추가되어야합니다.항상 텍스트 편집기가 X 텍스트로 끝나도록하십시오.

예제는 다음과 같습니다

Hello, I'm a message. END

어떻게 텍스트 편집기에서 'END'텍스트를 추가하고 항상 텍스트의 끝에서 남아를 적용 할 것인가? 나는 항상 거기에 보여주고 사용자가 그것을 지우거나 편집하지 못하도록하고 싶다. 이것이 가능한지 아십니까?

내 초기 생각은 TextChanged 이벤트에서 문자가 이미 끝에 있는지 확인하고 그렇지 않은 경우 삭제합니다. 그러나 그와 같은 단순한 논리는 문제를 야기 할 수밖에없는 것처럼 보입니다. 나는 이런 식으로 일하는 것으로 알려진 방법이 있는지 궁금해하고 있습니다.

+1

어떤 플랫폼입니까? winforms, 웹, wpf, 실버 라이트, winrt 등? –

+2

왜 TextBox에서 텍스트를 보시겠습니까? 사용자가 텍스트를 입력 한 후에 추가 할 수 있습니다. –

+0

사용자가 "THIS IS THE END"를 입력하려면 어떻게해야합니까? _END_이 끝나거나 텍스트에 속해 있습니까? 어떻게 인식하고 싶습니까? –

답변

2

KeyPress 이벤트에 대한 처리기를 추가 할 수 있습니다. 키가 적용하지 않으려는 편집을 나타내면 KeyPressEventArgs.Handled 값을 true로 설정 한 다음 반환하십시오.

0

사용자가 입력 한 텍스트의 끝에 미리 정의 된 텍스트가 필요한 경우 해당 텍스트를 코드 뒤에 메시지 끝에 추가하십시오. 사용자가 입력하기는 매우 드문 텍스트를 사용하십시오. ##END##처럼. 따라서 메시지의 끝은 ##END##입니다. 해당 메시지를 코드에서 ##END##의 색인까지 편집기 하위 문자열 메시지에 표시하고 실제 메시지 만 사용자에게 표시합니다.

관련 문제