将工具从另一种形式调用到另一种形式
本文关键字:另一种 调用 工具 | 更新日期: 2023-09-27 18:12:51
我在一个代码编辑器(winforms)工作,我只是想知道是否有可能从一个表单调用一个特定的框到另一个?
这组代码的示例:int line = 1 + richTextBox1.GetLineFromCharIndex(richTextBox1.GetFirstCharIndexOfCurrentLine());
int column = 1 + richTextBox1.SelectionStart - richTextBox1.GetFirstCharIndexOfCurrentLine();
label1.Text = "line: " + line.ToString() + ", column: " + column.ToString();
上面的***代码是在一个计时器内,它调用richtextbox中的行和列计数,就像在实际代码编辑器的右下方一样。
现在我只是想知道是否有可能调用显示到主表单的标签,并将显示到另一个,但仍将运行
像在mainform中一样,有richtextbox的代码,而在其他形式中,它应该有连接到mainform的label的代码。
我的问题是从另一种形式调用工具函数是可能的到另一个地方吗?
希望你能帮助我,真的需要,非常感谢!
只要你有一个表单工具箱的引用,只要通过公共属性暴露Label
/TextBox
或任何你想改变的东西,并从你的上下文中设置它。
public class ToolBox : ToolBoxBase
{
public CustomLabel
{
get
{
return label1.Text;
}
set
{
label1.Text = value;
}
}
}
private ToolBox toolbox;
void ShowToolBox()
{
InitToolBox();
toolbox.CustomLabel = "New label";
}
因为我甚至不确定这个问题指的是什么技术,我添加了一个可怜的伪例子来让你明白。InitToolBox
方法初始化工具箱并显示它,设置字段toolbox
并引用它。
如果另一个表单在另一个线程上运行,那么您将不得不异步调用标签设置器。