SMALL
로그를 눈에 보이게 처리해야 해서 TextBox에 로그를 남기는 함수를 만들었다.
근데.. static 함수에서는 this를 사용할 수 없다...
고민하던 중 생각난 해결책은 아래와 같다.
public partial class Form1 : Form
{
public static Form1 instance;
public Form1(){
InitializeComponent();
instance = this;
}
public static void func1(){
instance.Log("message");
}
private void Log(string Message)
{
this.Invoke(new Action(() =>
{
try
{
tb_log.AppendText($"[{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}] {Message}\r\n");
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
}));
}
}
...
폼 자체를 싱글톤처럼 활용하는 것이다.
어차피 중복실행을 막아놔서 상관은 없을 듯 하다.
BIG
'Desktop App > C#.Net' 카테고리의 다른 글
압축된 폰트파일 한번에 풀고 설치하기 (0) | 2022.06.01 |
---|---|
[C# .NET] Windows 방화벽 등록하기 (0) | 2022.03.03 |