2011-09-13 2 views
1

MSDN의 설명서에 따라 Lync SDK를 기반으로 응용 프로그램을 만들려고하는데 winformshost에서 대화 창을 도킹해야합니다.winformshost를 사용하지 않고 WPF에서 Lync SDK 대화를 도킹 할 수 있습니까?

하지만 문제는 winformshost가 항상 위에 있고, 불투명도 지원이없고, 재생하기가 어렵다는 점입니다. 그래서 최선의 선택처럼 보이지 않습니다.

사용할 수있는 다른 컨트롤이 있는지 궁금한가요?

도킹을 위해 Lync는 기본적으로이 코드 줄을 사용하여 도킹하려면 WindowsFormsHost.Child.Invoke(), 도킹하려면 WindowsFormsHost.Child.Hide을 사용합니다.

delegate void DockConversationDelegate(string ConversationId); 

myFormsHost.Child.Invoke(new DockConversationDelegate(DockTheConversation), 
     new object[] { _ConversationToDock }); 

public void WindowPanelHandle(string ConversationId, int PanelHandle) 
{ 
    Microsoft.Lync.Model.Conversation.Conversation conversationToDock; 
    if (myNewConversation.TryGetValue(ConversationId, out conversationToDock)) 
    { 
     ConversationWindow cw = _automation.GetConversationWindow(conversationToDock); 
     cw.Dock((IntPtr)PanelHandle); 
    } 
} 

모든 답변에 감사드립니다! 감사합니다 ...

답변

1

대화 상자 창이 기본 창인 WPF 창이 아니라고 생각합니다. 가능하지 않습니다. WPF가 네이티브 윈도우/컨트롤을 사용하는 유일한 방법은 WindowsFormsHost를 사용하는 것입니다. 그렇다면 저는 여러분이 그것에 매료되어 있다고 확신합니다.

나는 틀림없이 입증되고 싶다;)

관련 문제