引用其他类中的 Windows 窗体元素

xbo*_*nez 5 c# winforms

我对 Windows 窗体编程很陌生,我遇到了一个问题。

我有一个Form1带有文本框的 Windows 窗体tbx_Log.

在同一个项目的另一个类中,我想向日志文本框写入一些内容,但我无法在该类中引用 tbx_Log。我怎样才能做到这一点?

jde*_*aan 4

访问其他类实例(对象)内部的对象是不好的风格并且违反了数据封装。添加一个方法Form1

public void SetLogText(String text)
{
     tbx_Log.Text = text;
}
Run Code Online (Sandbox Code Playgroud)

这样,您可以通过使用其他一些控件或稍后记录到文件来更改方法的实现,而无需修改所有调用站点。始终尝试将代码放在类之外,而不了解类内部的内容。类实现对于外部代码来说应该是一个“黑匣子”。