C# 我是否可以在不使用winformshost的情况下在WPF上停靠Lync SDK对话?
我正在尝试构建一个以Lync SDK为基础的应用程序,根据MSDN上的文档,我需要将对话窗口停靠在winformshost上 但这里的问题是winformshost始终位于顶部,不支持不透明性,并且有点难以使用。所以这似乎不是最好的选择 我很好奇是否还有其他控件可以使用 对于停靠,Lync基本上使用这些代码行C# 我是否可以在不使用winformshost的情况下在WPF上停靠Lync SDK对话?,c#,wpf,dock,windowsformshost,lync-2010,C#,Wpf,Dock,Windowsformshost,Lync 2010,我正在尝试构建一个以Lync SDK为基础的应用程序,根据MSDN上的文档,我需要将对话窗口停靠在winformshost上 但这里的问题是winformshost始终位于顶部,不支持不透明性,并且有点难以使用。所以这似乎不是最好的选择 我很好奇是否还有其他控件可以使用 对于停靠,Lync基本上使用这些代码行WindowsFormsHost.Child.Invoke()停靠和WindowsFormsHost.Child.Hide取消停靠 delegate void DockConversatio
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);
}
}
感谢您的每一个回答!谢谢…我认为这是不可能的,因为对话窗口是本机窗口,而不是WPF窗口。由于WPF使用本机windows/控件的唯一方法是通过WindowsFormsHost,因此我很确定您一定会坚持使用它
但我希望被证明是错的;) 我认为这是不可能的,因为对话窗口是本机窗口,而不是WPF窗口。由于WPF使用本机windows/控件的唯一方法是通过WindowsFormsHost,因此我很确定您一定会坚持使用它 但我希望被证明是错的;)