2015-02-05 6 views
0

두 양식이 있습니다. 한 양식의 dataGridView에서 한 행을 두 번 클릭하면 다른 양식이 특정 행에 대한 정보로 열립니다. 그러나 두 번째 양식을 닫은 후 dataGridView의 다른 행을 두 번 클릭하여 같은 양식을 열었지만 새로 클릭 한 행에 관한 다른 정보를 표시하면 "폐기 된 객체에 액세스 할 수 없습니다.", "리소스를 사용하기 전에 리소스를 해제하지 않았는지 확인하십시오." 오류가 발생합니다. 어떻게 두 번째 양식을 다시 사용합니까 ??C#에서 처리 된 객체 (서식) 액세스?

+0

일부 코드를 보는 것이 도움이됩니다. 일반적으로, 일단 처리가 끝나면 Form을 재사용 할 수 없다. (명시 적으로'Close'를 호출하거나'var f2 = new Form2()와 같은 이상한 일을 할 때 발생할 수있다; (f2) {f2 .ShowDialog();} f2.ShowDialog();'). –

답변

2

내 생각에이 두 번째 양식에 대한 두 번째 양식 (개체라고 부름)을 만들고 ShowDialog() 또는 그 일부를 호출하는 것입니다. 당신이 그것을 닫으면 폐기되고 있습니다. 두 번 클릭 이벤트를 처리 할 때마다 새 SecondForm 객체를 만드는 것이 좋습니다.