저는 C #에 기본 형식 (거의 모든 소프트웨어와 같이 소프트웨어를 시작할 때 열리는 형식을 의미 함)을 가진 소프트웨어가 있습니다. 그러나 기본 양식은 ProjectFiles
. 파일을 추가 할 수 있는지 알고 싶습니다 listView
에서 ProjectFiles
기본 폼에서. 나는 이것을하는 방법을 인터넷에서 검색해 보았지만 모두가 그것을하는 방법을 다른 방식으로 요구하고 있습니다. 나는 또한 도움없이 이것을 시도 했으므로 여기에 내 코드가 있지만 문제는이 코드를 사용할 때 소프트웨어가 응답하지 않는다는 것입니다.
주요 형태 :
public string[] lines { get; set; }
void projectFilesToolStripMenuItem1_Click(object sender, EventArgs e)
{
if (this.parentForm == null)
{
return;
}
if(opfd.ShowDialog()==DialogResult.OK)
{
string[]lines = File.ReadAllLines(opfd.FileName);
}
}
ProjectFiles :
void label1_Click(object sender, EventArgs e)
{
MainForm mf = new MainForm();
{
string[] lines = File.ReadAllLines(mf.lines.ToString());
foreach (string line in lines)
{
listView1.Items.Add(line);
}
}
}
어떤 도움이라도 대단히 감사합니다. 감사!
편집 : 오류가 무엇인지 더 자세히 게시하도록 요청 받았습니다. 위에서 말했듯이 소프트웨어가 회색으로 표시되고 응답이 중지되었다는 메시지 상자가 나타납니다. 이것이 충분히 명확하지 않은 경우 알려주십시오.
편집 : 나는 아래 asnwers를 시도했지만 소프트웨어는 여전히 똑같은 작업을 계속합니다. 소프트웨어가 처리하기에는 너무 많은 것 같습니다.
우선, ShowDialog ()를 호출하여 폼을 표시 할 때이 문 이후의 코드는 해당 폼이 닫힐 때까지 실행되지 않습니다. 의 설명 부분을 참조하십시오 이
따라서 귀하의 경우 (ShowDialog) MainForm에서 ProjectFiles의 목록보기에 파일을 추가 할 수 없습니다
하지만 그렇게해야한다면
ProjectFiles 폼에 대한 포인터를 MainForm의 멤버 변수로 유지
ProjectFiles theProjectFiles = new ProjectFiles ();
.ShowDialog () 대신 .Show ()를 사용하여 ProjectFiles 폼을 표시합니다.
theProjectFiles.Show ();
평소처럼 ProjectFiles 양식에서 listView1을 사용하십시오.
theProjectFiles.listView1.Add (...);
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다