
비내린 다음
최고 기록 갱신 ㅎ_ㅎ
C# MDI Child Form Name으로 활성, 다른 Form의 함수 호출
### 01. MDI Child Form Name으로 Form 활성화 ###
Form fm
Type t = Type.GetType("myApp.forms." + _name);
fm = Activator.CreateInstance(t) as Form;
fm.MdiParent = this;
fm.Show();
### 02. 다른 Form의 함수를 호출 ###
using System.Reflection;
Type t = fm.GetType();
MethodInfo minfo = t.GetMethod("ClearData", BindingFlags.Instance | BindingFlags.Public);
object[] prm = new object[1];
prm[0] = strParam;
minfo.Invoke(fm, prm);
※ 02. 참고 : https://amored8701.tistory.com/112
C# MDI child icon 문제
C# MDI form을 사용하다보면 child form의 icon이 아래와 같이 이상하게 나올때가 있다.

해결 방법은
1. MdiParent form의 속성에 MainMenuStrip를 연결한다.

2. MdiChild FormActivate에다음과 같이 코드를 추가한다.
var bmp = new Bitmap(16, 16);
using (var g = Graphics.FromImage(bmp))
{
g.DrawImage(childForm.Icon.ToBitmap(), new Rectangle(0, 0, 16, 16));
}
var newIcon = Icon.FromHandle(bmp.GetHicon());
childForm.Icon = newIcon;
childForm.Show();