操作反射动态挪用winform窗体的体例; r: `# {/ }: p& q5 h5 X/ ^5 E* v
C#操作反射动态挪用winform窗体的体例
" G& I4 [' A9 K" F4 z" [* ~- M5 d. I在WinForm轨范中,经由过程主窗体的Menu打开分歧的窗体6 U" n, a W6 W; S& {* m
以往做法:在Menu的Click事务中,建树打开窗体的对象实例
/ Q4 n: ~" p3 _* X6 O( x6 L9 y6 i这样的错误谬误,我不说了:)% a; x4 h4 z2 a+ }, u6 B8 I; `
看看操作反射动态挪用窗体对象的体例:
! B, Z% F, t; P, Q/ z1 J- Zprivate void CreateForm(string strName)
4 {. R; L% B% Y6 d1 D! B{5 I4 a4 [1 O! ?( \& J
this.Cursor = Cursors.WaitCursor;
0 ^9 p3 Y5 {$ lstring path=AssemblyName;//项目的Assembly选项名称# Q3 e4 f; S' c& u" a
string name=strName; //类的名字
: O- ^0 j8 g* mForm fm=(Form)Assembly.Load(path)。CreateInstance(name);
6 b7 j! J- [* Y9 a2 f3 X( ]fm.MdiParent=this.ParentForm;& Q- V7 J! I3 u; J' ^: r
fm.Show();* t `; Z# H0 {5 R# c
fm.Dock=DockStyle.Fill;
7 @: q3 o! `5 ~- z4 r2 H1 Zthis.Cursor = Cursors.Default;, \/ w3 [) A/ j3 @& b( P S# l
}
* H+ A: N! o5 F0 B2 A相信这样做分歧的益处巨匠能体味到。 |