gpt4 book ai didi

c# - 传递包含控件的对象

转载 作者:太空宇宙 更新时间:2023-11-03 20:59:53 26 4
gpt4 key购买 nike

为了防止跨线程异常,我有以下静态方法:

public static void SetText(System.Windows.Forms.Form form, System.Windows.Forms.Control ctrl, string text)
{
if (ctrl.InvokeRequired)
{
SetTextCallback d = new SetTextCallback(SetText);
form.Invoke(d, new object[] { form, ctrl, text });
}
else
{
ctrl.Text = text;
}
}

来自这个答案

Cross-thread operation not valid: Control 'textBox1' accessed from a thread other than the thread it was created on

它运行良好,但我想知道:表单对象包含各种控件等,但传递对象不会花费额外的 RAM 或看起来。

怎么会?

如果;

  • 我会在表单类本身中执行此方法

  • 我会将整个表单对象传递给不同类中的此方法吗?

编辑

我读过一篇说服不要传递 Windows.Form 对象的文章(找不到这篇文章),这让我很困惑,所以我自动将其与 RAM 传递对象的可能高使用率联系起来。

最佳答案

关于c# - 传递包含控件的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46582777/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com