我的表单中包含以下代码:
public static void setRichText(string TextIn)
{
rtxStatus.AppendText(TextIn);
}
我有一个richtextbox打印控件,我想以不同的格式(一些粗体,一些常规文本)附加文本。
这样我就可以将文本附加到表单中的控件然后打印出来。
在我的课程中,我有这个代码将文本附加到控件,并在整个文本文件格式化和附加后,我将打印富文本控件的内容。
frmCashierPrinting.setRichText(pqRequests[s]);
(pqRequests
是通过在字符串上使用Split填充的数组或列表)
但是我收到编译错误:
非静态字段,方法或者需要对象引用 property'BCPrintQ.frmCashierPrinting.rtxStatus'
请问我做错了什么?
答案 0 :(得分:5)
您的代码失败,因为setRichText
被定义为静态方法,即使您使用对象引用调用它也是如此。
从方法声明中删除static
关键字,即:
public void setRichText(string TextIn)
{
rtxStatus.AppendText(TextIn);
}
您还需要确保setRichText
的所有调用方都使用对现有Form的引用来调用该方法,而不是将其作为静态方法访问。