如何使用函数更改窗体中对象的属性?
本文关键字:对象 属性 窗体 何使用 函数 | 更新日期: 2023-09-27 17:53:57
假设您正在尝试设置标签的文本。通过这样做,您调用一个函数SetText(labelname, "texthere")。SetText 'header'是什么?
我在:
private void SetText(object foo, string bar)
但这不起作用
编辑:我有这个:
private void SetText(Control thing, string text)
{
if (this.InvokeRequired)
{
SetTextCallback d = new SetTextCallback(SetText);
Invoke(d, new object[] { text });
}
else
{
thing.Text = text;
}
}
但是它说的是参数个数无效。我需要改变什么?
使用Control class代替Object,因为前者定义了控件(具有可视表示的组件)的基类并公开了Text属性。
private void SetText(Control control, String text)
{
control.Text = text;
}
像这样的,您不需要框化/强制转换对象。否则,您还应该指定对象的类型,如您可以传递TextBox, Label等。
可能是因为您引用了错误的对象,请尝试:
private void SetText(ref object foo, string bar)
注意ref
关键字