ActiveControl.Name有时会返回空字符串

时间:2013-09-23 20:51:19

标签: winforms

我有一个托管UserControl的主winform。用户控件托管各种其他控件,包括文本框,按钮和网格。我一直在使用UserControl.ActiveControl.Name来确定当前活动控件的名称。这大部分效果很好。

然而,有时,我得到空字符串而不是实际的控件名称。我的网格有一个可编辑的列,我的感觉是它与某种方式有关。我的意思是,当我在editmode时,我得到activecontrol名称的空字符串,即使网格是活动控件。为什么呢?

使用:VS2012,.NET 4.0

感谢您的帮助

1 个答案:

答案 0 :(得分:1)

假设您正在使用DataGridView;当您处于编辑模式时,会添加一个没有名称的控件。因此名称为空,但控件不为null,因此在那里有一个有效的控件。如果查看控件上的AccessibleName属性,您将看到“编辑控件”的值。