我已经使用方法UpdateLogList()
来更新代码中的listView,并且可以正常工作。现在创建了我需要的此类,当我尝试使用UpdateLogList()
时出现错误
非静态字段,方法或属性'Form1.UpdateLogList(string)'需要对象引用
并且不能在其他类中使用它。
我发现许多与此问题类似的问题,但是没有一个解决方案对我有用。
我如何使它起作用
public partial class Form1 : Form
{
private class MyInit : AnotherClass
{
public override void Init()
{
base.Init();
// some action occur i need to update here
Form1.UpdateLogList("Text i wan't to set")
}
}
public Form1()
{
InitializeComponent();
}
public void UpdateLogList(string data)
{
logList.Items.Add(dateNow + " - " + data);
}
}
答案 0 :(得分:0)
尝试使其变为静态。
public static void UpdateLogList(string data){//your code here}
答案 1 :(得分:0)
(大概)您正在logList
中使用成员UpdateLogList
,因此不能使其成为静态。因为它不是静态的,所以不能像在这里那样在没有目标的情况下调用它:
Form1.UpdateLogList("Text i wan't to set");
更改它以将该方法作为实例方法调用:
this.UpdateLogList("Text i wan't to set"); // `this.` is optional
现在,当您想从另一个类调用此方法时,请确保您具有对表单的引用。您将可以调用它:
myFormInstance.UpdateLogList("Text i wan't to set");