2013-02-23 3 views
0

TextBox을 사용하여 포스트잇 메모 모양의 편집 가능한 제목을 만듭니다. 나는 RichEditBox에서 TextBox으로 변경하여 문제가 해결 될 수 있는지 알아 보았습니다. 문제가 해결되지 않으면 다시 도움을 요청할 수 있습니다.텍스트를 텍스트 상자의 너비로 제한하십시오.

내 제목은 전체 제목을 표시하고 싶기 때문에 사용자가 TextBox의 너비 설정에 맞지 않는 문자를 입력하는 것을 원하지 않는다는 것입니다. 예를 들어 10 개의 큰 M이 내 TextBox 너비를 채울 것이기 때문에 고정 된 한계를 입력 할 수있는 문자의 양을 설정하는 것은 실제로 작동하지 않지만 다른 문자는 그 중 절반 만 채울 것입니다. 그래서 텍스트의 너비를 TextBox 너비와 비교하고 싶습니다. 그래서 그 지점을 넘어 입력을 제한 할 수 있습니다.

편집 : Segoe UI 글꼴을 사용하고 있으며 글꼴을 솔루션과 동일한 너비의 글꼴로 변경하는 것을 고려하지 않습니다.

+1

참조 http://stackoverflow.com/questions/4219798/determine-how-wide-a-rendered-character-is-in-net 또는 http://stackoverflow.com/questions/ 721168/how-to-determined-the-size-of-a-string-given-a-font 도움이 될만한 글꼴 – ChrisF

+0

TextBox 및 RichEditBox의 속성을 조사해보고이 문제와 관련된 모든 것을 시도했습니다. 나는 워드 랩 (wordwrap), RichEditBox와 AcceptsReturn 속성의 빌트인 스크롤을 사용하지 않게했다. 필자는 DataWriter의 MeasureString 메서드를 사용하여 문자의 양을 측정했습니다. 문자열의 너비를 측정하는 다른 방법을 찾지 못했습니다. – oscar93

+0

텍스트 상자 자체의 폭을 기준으로하면 어떨까요? – Brian

답변

0

텍스트 상자 글꼴을 Courier 글꼴로 설정하면 모든 문자의 너비가 동일하고 최대 값 계산은 간단 해집니다. 내가

+0

Windows 스토어 앱의 상징 인 segoe 글꼴을 원했기 때문에 실제로 완벽한 솔루션이 아닙니다. 그러나 여전히 좋은 백업 솔루션! – oscar93

+0

Courier 글꼴과 동일한 속성을 가진 Segoe UI Mono 글꼴을 찾았습니다. 적어도 완벽에 가깝습니다. 나는 여전히 더 나은 해결책이 없다는 것을 이상하게 여깁니다. 그래서 질문을 계속하고 누군가가 더 나은 해결책을 가지고 있는지 살펴볼 것입니다. 감사! – oscar93

0

Max value telling by hard coding .

프로그래밍 세계에서 빨아. 메신저 도와주세요 ...

+0

응답을위한 Thx, 그러나 나는 나의 질문에서 진술했다시피, 나는 이것을 이미 시도하고, 나의 문제를 진짜로 해결하지 않았다. – oscar93

+0

나는 그 질문을 이해하지 못했다고 생각합니다. 그는 특정 * 숫자 * 문자로 제한하고 싶지 않습니다. 그는 텍스트 상자의 실제 크기가 무엇이든 그것을 제한하려고합니다. –

관련 문제