반응형
런타임에 텍스트 상자의 텍스트를 굵게 설정하려면 어떻게합니까?
저는 Windows 양식을 사용하고 있으며 특정 값인 경우 텍스트를 굵게 만들고 싶은 텍스트 상자가 있습니다.
런타임에 글꼴 특성을 어떻게 변경합니까?
textbox1.Font.Bold라는 속성이 있지만 이것은 Get 전용 속성입니다.
글꼴 자체의 굵은 체 속성은 읽기 전용이지만 텍스트 상자의 실제 글꼴 속성은 그렇지 않습니다. 다음과 같이 텍스트 상자의 글꼴을 굵게 변경할 수 있습니다.
textBox1.Font = new Font(textBox1.Font, FontStyle.Bold);
그리고 다시 :
textBox1.Font = new Font(textBox1.Font, FontStyle.Regular);
응용 프로그램에 따라 해당 글꼴 할당을 텍스트 변경 또는 해당 텍스트 상자의 포커스 / 언 포커스에 사용하고 싶을 것입니다.
다음은 어떻게 생겼는지에 대한 간단한 샘플입니다 (텍스트 상자 만있는 빈 양식. 텍스트가 '굵게'표시되고 대소 문자를 구분하지 않으면 글꼴이 굵게 바뀜).
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
RegisterEvents();
}
private void RegisterEvents()
{
_tboTest.TextChanged += new EventHandler(TboTest_TextChanged);
}
private void TboTest_TextChanged(object sender, EventArgs e)
{
// Change the text to bold on specified condition
if (_tboTest.Text.Equals("Bold", StringComparison.OrdinalIgnoreCase))
{
_tboTest.Font = new Font(_tboTest.Font, FontStyle.Bold);
}
else
{
_tboTest.Font = new Font(_tboTest.Font, FontStyle.Regular);
}
}
}
다음 과 같이 일반 스타일 과 굵은 스타일Extension
간에 전환 하는 방법을 사용할 수 있습니다 .
static class Helper
{
public static void SwtichToBoldRegular(this TextBox c)
{
if (c.Font.Style!= FontStyle.Bold)
c.Font = new Font(c.Font, FontStyle.Bold);
else
c.Font = new Font(c.Font, FontStyle.Regular);
}
}
그리고 사용법 :
textBox1.SwtichToBoldRegular();
txtText.Font = new Font("Segoe UI", 8,FontStyle.Bold);
//Font(Font Name,Font Size,Font.Style)
참고 URL : https://stackoverflow.com/questions/3089033/how-do-i-set-a-textboxs-text-to-bold-at-run-time
반응형
'IT story' 카테고리의 다른 글
MATLAB에서 &와 &&의 차이점은 무엇입니까? (0) | 2020.09.09 |
---|---|
java.io.PrintWriter와 java.io.BufferedWriter의 차이점은 무엇입니까? (0) | 2020.09.09 |
Angular 2 구성 요소 생성자 대 OnInit (0) | 2020.09.09 |
"접기"LINQ 확장 방법은 어디에 있습니까? (0) | 2020.09.09 |
UNIX mailx 명령을 통해 어떻게 이메일을 보낼 수 있습니까? (0) | 2020.09.09 |