VS 2010 (.NET 4.0)을 사용하여 개발 된 .NET Winforms 응용 프로그램과 OS가 Windows 7입니다. 솔루션에서 간단한 달력 컨트롤로 구성된 간단한 양식이 있습니다. 이 양식은 두 가지 양식의 버튼 클릭으로 호출됩니다.모달 winform이 표시되지 않습니다.
// Parent Form
public class ParentForm : Form
{
// Button click event handler is as follows:
void btnCalendarClick(object sender, EventArgs e)
{
// ...other code
MyStatisClass.ShowCalendar();
}
}
//Calendar Form
public class CalendarForm : Form
{
// And the ShowCalendar method is as under..
public static void ShowCalendar()
{
using (CalendarForm frm = new CalendarForm())
{
if(frm.ShowDialog() == DialogResult.OK) { SelectedDate = frm.LastSelectedDate; }
}
}
}
를 지금은 설계 및 코드에서 거의 비슷 부모 양식의 두 사본을, 데 다음과 같이 버튼 클릭에 전화입니다. 그러나 버튼 클릭시 하나의 양식에서 다른 양식의 단추를 클릭 할 때 열리는 달력이 나타나지만 열리지 만 표시되지는 않습니다. 그러나 작업 표시 줄에서이를 볼 수 있으며 작업 표시 줄 자체에서 십자가를 클릭하여 아무 것도 선택하지 않고 닫아야합니다. 화면에 표시되지 않습니다. 컨트롤의 모든 탭 순서를 확인하고, BringToFront를 캘린더 폼에서 수행하고, SendToBack을 부모 폼에서 시도하고, InvokeRequired 속성을 사용하여 크로스 스레드를 확인하려고했지만 아직 폼을보고 있지 않습니다. 또한 예외가 발생하는지 확인하기 위해 가능한 모든 장소에 try catch를 넣습니다. 그러나 그것은 명중하지 않으며 실제로 모양은 다만 잘 열린다. 누락 된 것이 있으면이 양식을 보여주지 못하게 하시겠습니까? 정적 방법은 CalendarForm에 있기 때문에
감사합니다, 모두의 Bhushan
게시 된 코드에서 볼 수없는 것 같습니다. 귀하의 문제는 "거의 비슷한 디자인"입니다. –
한 번에 2 개의 대화 상자를 표시하려고합니까? –