Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 数据绑定。添加速度非常慢_C#_.net_Winforms_Data Binding - Fatal编程技术网

C# 数据绑定。添加速度非常慢

C# 数据绑定。添加速度非常慢,c#,.net,winforms,data-binding,C#,.net,Winforms,Data Binding,我昨天问了一个问题,供参考: 我将一组控件绑定到一个属性类;然而,它确实减慢了应用程序的GUI部分。例如,使用以下代码: numericUpDownPhysicalAIs.DataBindings.Add("Value", configurationValues, "PhysicalAIs"); numericUpDownInternalAIs.DataBindings.Add("Value", configurationValues, "InteralAIs")

我昨天问了一个问题,供参考:

我将一组控件绑定到一个属性类;然而,它确实减慢了应用程序的GUI部分。例如,使用以下代码:

        numericUpDownPhysicalAIs.DataBindings.Add("Value", configurationValues, "PhysicalAIs");
        numericUpDownInternalAIs.DataBindings.Add("Value", configurationValues, "InteralAIs");
        numericUpDownPhysicalAOs.DataBindings.Add("Value", configurationValues, "PhysicalAOs");
        numericUpDownInternalAOs.DataBindings.Add("Value", configurationValues, "InternalAOs");
        numericUpDownSetpoints.DataBindings.Add("Value", configurationValues, "Setpoints");
        numericUpDownIndexRegisters.DataBindings.Add("Value", configurationValues, "IndexRegisters");
        numericUpDownNetworkID.DataBindings.Add("Value", configurationValues, "NetworkID");
        numericUpDownQuiescentOperationStartupDelay.DataBindings.Add("Value", configurationValues, "QuiescentOperationStartupDelay");
        numericUpDownQuiescentTelemetryTable.DataBindings.Add("Value", configurationValues, "QuiescentTelemetryTableScanRate");
        numericUpDownPercentQuiescentThreshold.DataBindings.Add("Value", configurationValues, "PercentQuiescentThreshold");
        numericUpDownPercentageOfQuiescentInterval.DataBindings.Add("Value", configurationValues, "PercentQuiescentInterval");
        numericUpDownAODayWeek.DataBindings.Add("Value", configurationValues, "AODayWeek");
        numericUpDownAODayMonth.DataBindings.Add("Value", configurationValues, "AODayMonth");
        numericUpDownAOMonthYear.DataBindings.Add("Value", configurationValues, "AOMonthYear");
        numericUpDownAOYear.DataBindings.Add("Value", configurationValues, "AOYear");
        numericUpDownTimeDay.DataBindings.Add("Value", configurationValues, "TimeDay");
        numericUpDownDebugStatementNumberSetpoint.DataBindings.Add("Value", configurationValues, "DebugStatementNumberSetpoint");
        numericUpDownTelemetryControlSetpoint.DataBindings.Add("Value", configurationValues, "TelemetryControlSetpoint");
        numericUpDownCommunicationFailDI.DataBindings.Add("Value", configurationValues, "CommunicationFailDI");
        numericUpDownCommunicationFailAddressAO.DataBindings.Add("Value", configurationValues, "CommunicationFailAddressAO");
        numericUpDownAddressUnreachableAO.DataBindings.Add("Value", configurationValues, "AddressUnreachableUnitAO");
        numericUpDownPowerCountAO.DataBindings.Add("Value", configurationValues, "PowerCountAO");
        numericUpDownResetCountAO.DataBindings.Add("Value", configurationValues, "ResetCountAO");
        numericUpDownRandomNumberAO.DataBindings.Add("Value", configurationValues, "RandomNumberAO"); 
表单显示所有数字向上/向下框需要30秒到一分钟的时间。如果我注释掉这段代码,GUI会立即弹出。这是DataBindings.Add方法的限制吗


谢谢

检查此项是否尝试禁用绘制(覆盖OnPaint,绑定时不执行任何操作)?停止绘制操作,如ralf.w。建议可以加快速度,但我相信这里的根本问题是数据绑定使用反射,这本身就很慢。感谢所有的回复。经过一番思考,这可能不是我解决这个问题的最佳方式。虽然数据绑定可能会让事情变得更简单,但如果我走这条路的话,让它工作起来似乎是件大事。