2011-07-27 3 views
0

패널에 레이블을 생성 한 winform에서 작업하고 있습니다. 텍스트 단어를 추가 할 때 텍스트가 패널 너비를 채울 때 레이블을 다음 줄로 이동하려면 어떻게해야합니까? winform의 패널 내부에 레이블이 붙어 있습니다.

나는 다음 코드를 시도했지만 바로

 int lbl= 150; 
     if (Lbl_full_list.Width > o) 
     { 
      my_Lbl.Text += "\n" + comboBox1.Text; 
      o += 150; 
     } 
     else 
     { 
      my_Lbl.Text.Text += " , " + comboBox1.Text; 
     } 
+1

다음은 비슷한 스레드입니다. http://stackoverflow.com/questions/1204804/word-wrap-for-label-in-winforms – CharithJ

+0

전에 이것을 보았고 시도했을 때 성공하지 못했습니다. 예를 보여 주시겠습니까? 고맙습니다! –

+0

@ naf-naf는 스레드 (위 게시 됨)를 조금 아래로 스크롤했습니다. 대부분의 표를 가진 응답을보십시오. 'MaximumSize' 속성은 그것을 할 수있는 방법입니다 –

답변

2

가장 쉬운 해결책이다 보이지 않는 :

  1. falsemy_Lbl.AutoSize를 설정합니다.
  2. 포함 패널의 도킹 모드 my_LblFill으로 설정하십시오.

my_Lbl은 텍스트 줄이 라벨의 너비를 초과하면 자동으로 새 줄을 시작합니다. 또한 Panel 크기가 조정되면 동적 레이아웃을 얻을 수 있습니다.

이 목적으로 전용 Panel을 만들어야합니다. 현재 Panel을 포함하고있는 내부에 Controls이 더있는 경우이 목적으로 만 새 부품을 만드십시오 (my_Lbl 포함).

+0

고맙습니다! –

+0

@ naf-naf : 환영 – InBetween

0

MaximumSize (Width, Height) 속성이 있습니다. 필요에 따라 설정하십시오. autosizetrue으로 남겨 둡니다.

관련 문제