操作反射动态挪用winform窗体的体例9 w$ ^" a3 r# s8 {0 y
C#操作反射动态挪用winform窗体的体例
8 A: Q5 @: b9 _, G, X& S: v& J9 V/ `在WinForm轨范中,经由过程主窗体的Menu打开分歧的窗体0 n2 G4 f: o# Z
以往做法:在Menu的Click事务中,建树打开窗体的对象实例
" S3 | U) H: F9 _/ H3 r! a% Z这样的错误谬误,我不说了:)9 ~' H1 O6 T2 P5 T d1 C
看看操作反射动态挪用窗体对象的体例:" V, U# u( E+ n1 r
private void CreateForm(string strName)/ `4 K5 s: _0 v9 Y, `
{7 V" ]# x# D" h5 z7 L
this.Cursor = Cursors.WaitCursor;
0 r4 [( W' k% Jstring path=AssemblyName;//项目的Assembly选项名称
. C; E$ R9 b, \string name=strName; //类的名字# f: B0 P# z6 M# K1 h. ^
Form fm=(Form)Assembly.Load(path)。CreateInstance(name);
6 R7 K6 u ?; r' M: l; dfm.MdiParent=this.ParentForm;" S. F8 s& S1 {! n5 w2 a
fm.Show();( u& c+ U( P B/ d
fm.Dock=DockStyle.Fill;
0 n/ H/ j* q) M* Ythis.Cursor = Cursors.Default;
3 y- ^: _' G2 l) e/ [% e" Y}) F1 _& L. x$ d9 y: P s
相信这样做分歧的益处巨匠能体味到。 |