본문 바로가기

.NET

C# Mdi 프로그래밍에서 자식창의 값을 얻어오는 방법

반응형

C# Mdi 프로그래밍에서 자식창의 값을 얻어오는 방법

비공개 2007.05.13 15:25

답변 2| 조회 891

C# Mdi 프로그래밍을 할때

 

예를 들어서 Mdi가 지원되는 메모장을 만들려고한다고 하면

 

부모창과 자식창이 있는데

 

저장이나 열기 같은 메뉴는 부모창에있고

 

자식창은 단순하고 텍스트박스만 있는 윈도우 창이라면

 

새파일을 했을때 여러가지 창들이 열려있을텐데요

 

현재 클릭되어있는 특정 창의 데이터를 가져와서 파일로 저장하는 건 어떻게 하나요

 

그러니까 자식창1, 자식창2, 자식창3이 있다면

 

현재 자식창1이 클릭되어있는 상태라면..

 

그 자식창의 텍스트박스에 있는 값을 얻어와서 저장하는 방법을 알고싶습니다.

신고

의견 쓰기

질문자 채택된 경우, 추가 답변 등록이 불가합니다.

질문자 선택

.net 2005를 사용하시면 ActivateMdiChild를 사용해보세요.

sokm83

답변채택률 0%

2007.05.15 20:06

mdi에 대해 .net에서 기본적으로 제공하는 메소드입니다.

 

this.ActivateMdiChild를 해보시면 간단한 설명이 뜨는데

 

form을 반환하는 것을 알 수 있습니다.

 

this. 즉, 현재 부모창에서 자식창중에 활성화되어있는 자식창의 form을 반환하여

 

주는 메소드입니다.

 

간단한 사용예로는

 

Child tempChild = this.ActivateMdiChild;

 

로하여 사용하시면

 

tempChild에는 현재 활성화된 윈도우 form이 할당되게 됩니다.

 

그 후에 해당 from에서 하고자하는 작업을 하시면 됩니다.

의견 1

그 외 답변들 1

받은 추천순 | 최신순

re: C# Mdi 프로그래밍에서 자식창의 값을 얻어오는 방법

nodancer

답변채택률 85.8%

2007.05.14 09:25

Application 에 현재 Focus 된 값을 찾아 보세요.

 

 

참고 (MSDN 발췌) : Control.Focus

 

컨트롤에 대한 입력 포커스를 설정합니다.

 

public bool Focus();


컨트롤이 입력 포커스를 받으면 Focus 메서드가 true를 반환합니다. 컨트롤은 포커스를 가진 표시 큐를 표시하지 않고도 입력 포커스를 가질 수 있습니다. 이러한 동작은 아래에 나열된 선택할 수 없는 컨트롤이나 해당 컨트롤에서 파생된 컨트롤에서 주로 볼 수 있습니다.다음 조건이 모두 true이면 이 컨트롤은 선택 가능하고 입력 포커스를 받을 수 있습니다. 즉, ControlStyles.Selectable 스타일 비트가 true로 설정되어 있고, 해당 컨트롤이 다른 컨트롤에 포함되어 있고, 해당 컨트롤의 모든 부모 컨트롤이 표시되고 활성화되어 있어야 합니다.