将玻璃框扩展到 WPF 应用程序.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
将玻璃框扩展到 WPF 应用程序

本主题演示如何将 Windows Vista 玻璃框扩展至 Windows Presentation Foundation (WPF) 应用程序的工作区。 说明:此示例仅在运行已启用玻璃效果的桌面窗口管理器 (DWM) 的 Windows Vista 计算机上才会起作用。Windows Vista Home Basic 版本不支持透明玻璃效果。通常利用透明玻璃效果呈现的区域在其他版本的 Windows Vista 上呈现为不透明。?示例 下面的示例演示一个已扩展到 Internet Explorer 7 地址栏的玻璃框。 Internet Explorer,扩展的玻璃框位于地址栏后。 若要在 WPF 应用程序上扩展玻璃框,需要访问非托管的 API。下面的代码示例为扩展玻璃框工作区所需的两个 API 执行平台调用 (pinvoke)。每个 API 都是在名为 NonClientRegionAPI 的类中声明的。 C#  HYPERLINK javascript:CopyCode(ctl00_mainContentContainer_ctl17_ctl00_ctl00_code); \o 复制代码  复制代码  [StructLayout(LayoutKind.Sequential)] public struct MARGINS { public int cxLeftWidth; // width of left border that retains its size public int cxRightWidth; // width of right border that retains its size public int cyTopHeight; // height of top border that retains its size public int cyBottomHeight; // height of bottom border that retains its size }; [DllImport(DwmApi.dll)] public static extern int DwmExtendFrameIntoClientArea( IntPtr hwnd, ref MARGINS pMarInset);  HYPERLINK /zh-cn/partners/aa969512.aspx DwmExtendFrameIntoClientArea 是用于将框扩展到工作区中的 DWM 函数。它有两个参数,一个窗口句柄,一个  HYPERLINK /zh-cn/partners/bb773244.aspx MARGINS 结构。 HYPERLINK /zh-cn/partners/bb773244.aspx MARGINS 用于告知 DWM 框扩展到工作区中时延伸的程度。 若要使用  HYPERLINK /zh-cn/partners/aa969512.aspx DwmExtendFrameIntoClientArea 函数,必须获取一个窗口句柄。在 WPF 中,可以通过  HYPERLINK /zh-cn/partners/erop.hwndsource.aspx HwndSource 的  HYPERLINK /zh-cn/partners/erop.hwndsource.handle.aspx Handle 属性获取窗口句柄。在下面的示例中,框扩展至窗口的  HYPERLINK /zh-cn/partners/system.windows.frameworkelement.loaded.aspx Loaded 事件的工作区。 C#  HYPERLINK javascript:CopyCode(ctl00_mainContentContainer_ctl17_ctl00_ctl08_code); \o 复制代码  复制代码  void OnLoaded(object sender, RoutedEventArgs e) { try { // Obtain the window handle for WPF application IntPtr mainWindowPtr = new WindowInteropHelper(this).Handle; HwndSource mainWindowSrc = HwndSource.FromHwnd(mainWindowPtr); mainWindowSrc.Co

文档评论(0)

zw4044 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档