2

我正在将一个用 Visual Basic 编写的项目迁移到 C#。

在 VB 中加载表单期间,我执行了一个使用所述表单的控件的函数,它可以正常工作。

但是,在 C# 中的 Form Load 期间运行相同的函数时,该函数不起作用,因为它找到了 0 个控件。那么什么时候在 VB 和 C# 中创建和分配控件?

Visual Basic 中的代码:

新形式

Set Abertura(MiTag) = New aFrmAberturas
        Case 32, 4, 7, 28 ' "VIDRIOS" '"ACRÍLICOS" '"CIEGOS", 28 '"TELA MOSQUITERA"
            Set Abertura(MiTag) = New aFrmManualVi

我在表单加载期间的功能

If Abertura(MiTag).LblRev1(1) = "Tela Mosquit" Then
   .inter1(1, MHA) = "Vidrio Simple"
     cambio = True
 End If      

Controls.Count 在 IF

?aModule1.Abertura(MiTag).Count  165 

C# 中的代码

新形式

aModule1.Abertura[aModule1.MiTag] = new aFrmAberturas();                        
                    break;
                case 32 : case 4 : case 7 : case 28 :  // "VIDRIOS" '"ACRÍLICOS" '"CIEGOS", 28 '"TELA MOSQUITERA" 
                    aModule1.Abertura[aModule1.MiTag] = new aFrmManualVi(); 

我在表单加载期间的功能

if (Convert.ToString(((dynamic) aModule1.Abertura[aModule1.MiTag])._LblRev1_) == "Tela Mosquit")
            {
                aModule1.Vars[aModule1.MiTag].Inter1[1, aModule1.MHA] = "Vidrio Simple";
                cambio = true;
            }

Controls.Count 在 IF

aModule1.Abertura[aModule1.MiTag].Controls.Count 0

VB:这是表单的声明

VB:这是我在表单加载期间的功能,以及表单的 Controls.Count

C#:这是表单的声明

C#:这是我在表单加载期间的函数,以及表单的 Controls.Count

4

0 回答 0