C# .NET Windows 응용 프로그램은 이름이없고 테두리가없는 여러 폼을 동적으로 만듭니다. 그러나이 양식을 찾아 최상위로 설정해야합니다. 양식. 내 현재 논리는 생성 당시 문자열에 myForm.Handle을 작성하여 나중에 해당 핸들을 참조 할 수 있도록하는 것입니다.창 핸들에서 양식으로 캐스팅
그리고이 최상위 창으로 설정할 준비가 때, 실패 곳이며, 나는이 작업을 수행 :
sFormHandle는 문자열이며, 그것은 을 IntPtr를 기대Form myForm = Form.FromHandle(sFormHandle);
if (myForm != null) { myForm.TopMost = true; }
, 어떻게 변환 할 수 있습니까? 아니면 다른 방법으로 어떻게 할 수 있습니까?
감사합니다.
예외가 발생하고 있습니까? 그렇다면 예외는 무엇입니까? 캐스팅하지 못하는 것에 대해 뭔가요? – Brian
이렇게하지 않으면 TopMost 속성을 true로 설정하면 핸들 값이 * 변경됩니다. 문자열이나 IntPtr을 저장하는 대신 Form에 대한 참조를 대신 저장하십시오. –
핸들이 변경되었다는 사실을 모르고 있었고 이제 목록에 양식을 추가하고 나중에 트릭을 수행했습니다. 감사. –