문제

Label 컨트롤의 AutoSize 속성이 마음에 들지 않습니다.무엇보다도 멋진 둥근 테두리를 그리는 사용자 지정 레이블이 있습니다.생성자에 AutoSize = false를 배치하고 있지만 디자인 모드에 배치하면 속성은 항상 True입니다.

성공적으로 다른 속성을 재정의했지만이 속성은 행복하게 나를 무시합니다.이것이 "MS 설계에 의한 것"이라면 누구든지 단서가 있습니까?

누군가가 관심을 가질 경우를 대비하여 내 레이블의 전체 소스 코드는 다음과 같습니다. 라코 디스

(Stack Overflow의 마크 업과 밑줄에 몇 가지 문제가 있지만 코드를 따라가는 것은 쉽습니다). <시간>

실제로 작동하지 않는 것을 보았을 때 재정의를 제거했습니다.지금 다시 추가하고 테스트하겠습니다.기본적으로 레이블을 IWillNotAutoSizeLabel이라는 새 레이블로 바꾸고 싶습니다.)

기본적으로 autosize 속성이 "on by default"가 싫습니다.

도움이 되었습니까?

해결책

폼 자체의 생성자에서 컨트롤의 특정 속성을 설정할 때 유사한 동작을 보았습니다.디자인 타임 기본값으로 되돌아가는 것 같습니다.

이미 OnLoad 메서드를 재정의하고 있습니다.AutoSize= false로 설정해 보셨습니까?아니면 기본값 false 값을 제공하는 데 주로 관심이 있습니까?

다른 팁

많은 시간을 보냈고 마침내 작동합니다!(내 코드는 vb.net이지만 쉽게 변환 할 수 있습니다.) 라코 디스

문제는 실제로 코드에서 Autosize를 재정의하지 않는다는 것입니다 (즉, Font 또는 ForeColor를 재정의하는 것과 같은 방식으로).

생성자에 this.AutoSize = false가 없습니다.클래스가 부분적으로 표시되어 있습니다. 해당 줄이있는 다른 파일에 생성자가있을 수 있습니다.Visual Studio 디자이너는 거기에있는 매개 변수없는 생성자를 호출합니다.

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