저는 공급 업체의 Outlook 추가 기능에 대한 "추가 기능"으로 실행되는 어셈블리를 구축하고 있습니다. 내 "행동"을 실행할 때가되면 몇 가지 간단한 컨트롤을 사용하여 간단한 창을 만들어야합니다. 벤더의 추가 기능은 부모 윈도우의 정수 핸들을 제공합니다. 내 어셈블리에서 다음과 같은 코드 System.Windows.Forms 참조 추가하여 윈폼으로 아주 쉽게 양식을 넣을 수 있습니다 이니 ParentWindowWrapper 내가 '창 핸들 주위에 심 클래스입니다추가 기능 DLL에서 간단한 기술을 사용하기 위해 어떤 기술을 사용해야합니까?
FrmHistoryDisplay frm = new FrmHistoryDisplay();
frm.ShowDialog(new ParentWindowWrapper(_parentWindowHandle));
m 주어진
private class ParentWindowWrapper : IWin32Window {
private int _parentWindowHandle;
public ParentWindowWrapper(int parentWindowHandle) {
_parentWindowHandle = parentWindowHandle;
}
public IntPtr Handle {
get { return new IntPtr(_parentWindowHandle); }
}
}
양식의 ShowDialog 메서드는 부모의 창 핸들을 래핑하기 위해 IWin32Window 구현자를 사용합니다.
이 모든 것이 효과적이고 간단 해 보입니다. WinForm Form 대신 WPF 창을 사용하여 유사한 작업을 수행 할 수 있는지 궁금합니다. 내가 신경 써야 할까?
+1 동의합니다. winforms 스틱. – NotMe
@Chris : 그러나 UI의 일부에 대해 WPF를 사용해야하는 매우 좋은 이유가있을 수 있습니다. 많은 경우에 훨씬 더 강력합니다. 문제의 응용 프로그램을 모른 채 좋은 생각인지 아닌지를 아는 것은 어렵습니다. –
@Reed : 아래에 귀하의 답변이 귀하의 의견과 모순 된 것 같습니다. – NotMe