我有.NET WPF应用程序,其中一个要求是用户可以在我的应用程序之外选择和复制文本。我的应用程序必须响应剪贴板事件。从字典中查找单词,然后在选定的文本旁边显示工具提示,并带有单词的翻译。
据我所知,这必须使用对Windows API的调用来完成。
我找到了完成此任务的示例代码。
我的第一个想法之一是将此示例转换为可以从.NET应用程序调用的库(基本上我的库将包含2个方法:show and hide tooltip)。不幸的是,我的VC ++知识几乎没有。
还有其他方法可以解决这个问题吗?
非常感谢你。
答案 0 :(得分:2)
工具提示没有什么神奇之处 - 它们只是带有薄边框,没有标题,背景黄色并始终处于顶级风格的窗户。
您可以轻松地在WPF中复制这些内容:
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
ResizeMode="NoResize"
SizeToContent="WidthAndHeight"
Background="Yellow"
WindowStyle="None"
Topmost="True">
<Border BorderBrush="Black" BorderThickness="1">
<TextBlock Text="Tooltip text"/>
</Border>
</Window>
现在您可以使用Window的所有方法和属性来移动,调整大小,显示和隐藏您的“工具提示”,作为奖励您还可以在工具提示中插入更多高级上下文(图像,按钮,超链接,您的徽标)或者让它看起来更有趣。