문제

나는 상황(핵심 기반 검색을)내가 어디가 여러 입력의 변화,그러나 제한 길이 있습니다.그래서 나는 건축 일반적인 제어 사용에 대한 각각의 입력,그리고 이제는 텍스트 상자를 사용할 때 입력 형식은 자유 형식의 텍스트입니다.이 경우에는 나의 길이를 텍스트 상자를 반영한 제약 조건에 배치된 입력 기반으로 TextBox 의 MaxLength 산(또는 적어도에 최대 길이의 일종).

이렇게 하려면 어떻게 해야 합니까?내가 이것을 실현하 는 기술적으로 불가능을 가진 변수 문자를,그러나 내가 관심이 점점에서 가깝습니다.필드에서 다양의 최대 길이에 3 문자를 주변에 90.

도움이 되었습니까?

해결책 5

무엇을 기반으로 말했다 그래서 지금까지,내 생각에 이상적인 솔루션을 이 경우에는 조합의 존의 제안과 앞으로 두는 미첼 및 overslacked.그래서,저는 길이는 표준을 사용하여 문자(이 말하는"C"),그리고 다음 설정된 폭과 같[국경 slack]+([길이]*([수 문자]+[5 번의 캐릭터 모 5])).

나가야 할 것이 다시 계산하는 캐릭터의 길이와 분야의 폭 어떤 시간에 글꼴 변경합니다.

다른 팁

나는 것입을 피하려고 이 동적인 접근 방식이다.
당신이 정말로 생각하는 그것에 가치를 추가해 사용자가?내 생각에 이상한 보이면,일반적인 통제에는 다른 모습니다.당신이 생각하는 사용자가 다를 수 있습니다 간에 텍스트할 수 있는 32 개의 문자 하는 29 일요?는 방법에 대해 extrem 가치입니까?할 때 예를 들어,세 개의 문자를 사용할 수 있습니다-또는 1024.
에서만 만날 수 있는 텍스트 상자 같은 길이 항상 더 나은 당신의 통제하고 쉽게 구현할 수 있습니다.사용자 요구에 대한 힌트는 최대 길이의 텍스트를 추가하는 레이블은"29 자"및 업데이트하는 동안 입력...

방법 중 하나는 당신이 할 수 있을 수도 있습 이지만,정확한 100%사용하는 것입니다."MeasureString"에서 방법은 그래픽 객체는 방법을 볼 수 있는 문자,글꼴에서 현재 사용하는 textbox.

거기에서 당신은 계산할 수 있습에 필요한 추가하여 커버의 테두리 등등.정확한 과학이지만,그것은 작동합니다.

다른 생각이

측정 전체 문자열 조금있을 수 있습니다 비효율적이,당신은 측정할 수 있 X1 문자(일반적으로 더 큰 것보다는 다른 사람)다음을 곱하여 모든

그것은 간단하게 될 것이며,그리고 잠재적으로 더 많은 시각적으로 기쁘게,"덩어리"텍스트 크기입니다.선택 폭는 작품에 대한 분야의 1-5 문자는 다음에 대한 폭 6-10,다음 11-20,20-30,30-50,etc.이 방법은,당신은 피할 수 있습니다 이상한 시각적 정렬하는 문제를 일어나 시도한 경우를 수직으로 스택 분야의 29,32,27 문자입니다.

이(거의)불가능을 가진 변수를 폭 글꼴입니다.

나는 당신을 시도할 수 있었을 찾아 상대적으로'넓은'성격지만,그는 여전히 발생할 수 있습니다 문제입니다.

가장 쉬운 솔루션을 것을 찾은 만족스러운 문자 폭(아마도 코뿔소 이당 글꼴 크기 또는 가족),그리고 다음 단순히 증식하는 최대 길이 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top