2012-02-29 4 views
0

부모 폼/컨트롤을 클릭하면 모달 폼에서 textBox의 색을 변경하고 싶습니다. 모달 자식에 대한 이벤트를 활성화, 입력으로 시도했지만 부모를 클릭하면 아무것도 표시되지 않으며 모달 폼의 트레이 막대 만 깜박입니다.부모님이 클릭했을 때 모달 폼이 바뀌는 색상

정보를 얻는 방법은 없습니까? 사용자가 부모를 클릭하고 모달 형식으로 텍스트 상자의 색을 변경하는 것 외에 다른 방법이 있습니까?

C# 및 winforms를 사용하고 있습니다.

+1

'.S howDialog()'메서드를 사용하면 모달 대화 상자를 닫을 때까지 상위 창을 더 이상 클릭 할 수 없습니다. 이것은 부모 윈도우가 결코 어떤 Click 이벤트도받지 못한다는 것을 의미합니다. – Jalal

+0

사실, 부모를 클릭 할 수 있지만 그 의미는 없습니다 : 부모와의 상호 작용이 필요 없습니다 - 부모를 클릭 할 때 호출되는 자식 이벤트의 이벤트가 필요합니다. 포커스 또는 무엇 이건간에 –

답변

0

의도적으로 모달 대화 상자는 부모와 상호 작용할 수 없습니다.

0

모달 폼이 표시 될 때 다른 폼이나 컨트롤을 동일한 프로세스에서 해당 폼에 집중시킬 수 없습니다. 이것이 모달 형식이 사용자를 새로운 양식에 집중하도록 유지하고 모달 형식을 해제 할 때 다른 양식을 계속 사용하기 위해 설계된 것입니다.

나는 다른 방법 제안 할 수 있습니다 :

  • 쇼를 자식 폼 모드가없는 다른 형태의 동안,
  • 이 양식을 사용하지 않도록 할 양식을 호출에
  • 해제 컨트롤을 호출하는 자식 폼의 Owner 속성을 설정 가 표시됩니다.
  • 일단 자식 폼이 닫히면 비활성화 된 컨트롤을 다시 활성화하십시오.
+0

문제는 formBorderStyle이 모달로 설정되어있어 none으로 설정 되었기 때문에 보이지 않습니다. 사용자가 부모 폼을 클릭하면 작동하지 않습니다 - 모달 자식을 닫지 않았기 때문에 - 그 모달을 알게해야합니다. 강철이 열렸다. –

관련 문제