如何将活动控件转换为文本框类型
本文关键字:文本 类型 转换 控件 活动 | 更新日期: 2023-09-27 18:35:11
我有一个这样的函数:
public static void NewFunction (TextBox txtOne)
{
//Do Something with txtOne
}
现在我想将当前的活动文本框传递给 txtOne。我试图称之为
NewFunction(ActiveControl.Name)
但这说的是无效的论点。请有人可以帮助我解决这个问题吗?
谢谢
你快到了,但你犯了一个错误。调用方法时,需要传递控件,而不是其名称
NewFunction(ActiveControl)
现在,如果您有多个控件,多个类型的控件,您可能会遇到问题。因此,为此,您应该执行以下操作 - make 数据类型为 Control
的参数并添加此代码
public static void NewFunction (Control ctrl)
{
TextBox tb = ctrl as TextBox;
if (tb != null)
{
//Do Something with txtOne
}
}
这是因为ActiveControl.Name
属性是string
的类型。应将ActiveControl
转换为TextBox
类型的值,并将此值传递给函数。
下面是示例:
var textBox = ActiveControl as TextBox;
if (textBox != null)
NewFunction(textBox);