C#相当于Delphi的DisableControls / EnableControls

时间:2011-04-23 22:12:20

标签: c# delphi dataset

什么是Delphi的DisableControls / EnableControls方法的C#等价物(用于在迭代底层数据集时禁用数据绑定控件的更新)?我用谷歌搜索了半个小时,没有找到答案...

我有一个列表框和一个绑定到绑定源的丰富编辑框,但我需要执行一个遍历整个数据集的操作,并且当我在底层数据集中移动时,两个控件都会更新。在Delphi中,这很容易:将在DisableControlsEnableControls之间进行迭代的块包含在内。我找不到C#/ .NET等价物,我看起来真的很难!

3 个答案:

答案 0 :(得分:2)

IIRC,将Enabled设置为false并不会阻止控件对WinForms中的数据更改做出反应。

ListBox这样的收藏绑定控件通常会有方法BeginUpdate()EndUpdate()暂时停用视觉更新。

此外,DarkSquirrel提到的属性可能值得一看

答案 1 :(得分:1)

我现在无法访问Visual Studio,所以我无法对此进行测试,但请查看控件实例的方法。代码如:

// set the Enabled property of 
// the controls to False; this should
// disable the controls for user access

listBox.Enabled = False;  
richEditBox.Enabled = False;  

// perform iteration  
// and other operations

// set the Enabled property back 
// to True  

listBox.Enabled = True;  
richEditBox.Enabled = True;  

该属性的确切名称可能略有不同,但我很确定这就是它。

答案 2 :(得分:0)

到目前为止,我知道,你不需要在C#中禁用/启用控件,科学这种类型的DataSet不适用于当前游标,如Delphi TDataSet。