我有一个listView
的表单,通过调用showCheckedInFiles()
方法填充。当我向表单添加一个简单的按钮并按下它时,该方法可以正常工作,调用该方法,但是当我从其他地方调用该方法时,它将不会填充我的listview
。
请帮助它让我疯了。下面的第一个方法是从另一个类中调用的,它显示在下面,我已经包含了按钮方法以供参考,正如我所说,按钮工作完美,但我需要能够在不单击的情况下调用方法一个按钮!!:
public void openProject(string projectname)
{
projectName = projectname;
string userDir = CSDBpath + projectname + "\\checkedOUT\\" + userName;
if (!Directory.Exists(userDir)) //Does the user's directory exist, if not, create it
{
Directory.CreateDirectory(userDir);
}
showCheckedInFiles();
}
private void button3_Click(object sender, EventArgs e)
{
showCheckedInFiles();
}
调用上述方法的方法:
private void buttonOpenProject_Click(object sender, EventArgs e)
{
ListView.SelectedListViewItemCollection mySelectedItems;
mySelectedItems = listView1.SelectedItems;
Form1 mainform = new Form1();
string myProject = "";
foreach (ListViewItem item in mySelectedItems)
{
myProject = item.Text;
}
mainform.openProject(myProject);
//mainform.showCheckedInFiles();
this.Close();
}
答案 0 :(得分:5)
在buttonOpenProject_Click
中,您创建了一个新的Form1
隐藏实例,该实例与已经显示的已存在的实例无关。
答案 1 :(得分:0)
将ShowCheckInFiles方法移动到单独的类,并作为listview中的参数传递。这应该允许您使用该方法,无论您在何处调用它。
例如......
SomeClass.ShowCheckInFIles(ListView1的);