C#桌面应用置顶

发布时间:2021-10-10

Winform和WPF开发中,有时会有需要置顶窗体的需求,本文就介绍怎么使用Win32API进行置顶

C#加载Win32API

/// <summary> 
/// 设置当前窗体位置
/// </summary> 
/// <returns></returns> 
[DllImport("user32.dll", CharSet = CharSet.Auto)]
private static extern int SetWindowPos(IntPtr hWnd, int hWndInsertAfter, int x, int y, int Width, int Height, int flags);

/// <summary> 
/// 得到当前活动的窗口 
/// </summary> 
/// <returns></returns> 
[DllImport("user32.dll", CharSet = CharSet.Auto)]
private static extern System.IntPtr GetForegroundWindow();

调用方法

Winform调用

Winform 中对于窗体和控件都有一个 Intptr 类型的属性 Handle,该属性指向了自身指针,可直接用于调用

SetWindowPos(this.Handle, -1, 0, 0, 0, 0, 1 | 2); //最后参数也有用1 | 4

WPF调用

WPF 中,没有直接的 Handle 属性供给调用,需要使用 WindowInteropHelper 来获得窗体的引用,在进行置顶

SetWindowPos(new WindowInteropHelper(this).Handle, -1, 0, 0, 0, 0, 1 | 2);
其他阅读

Open Graph优化SEO

Open Graph(OG)协议作为社交分享优化的核心技术,不仅决定了内容在社交媒体平台的展示效果,还间接影响搜索引擎优化(SEO)的表现。本文将从作用解析、核心标签配置到动态生成策略,全面介绍 Open Graph 的应用。

查看原文

WPF中切换主题功能

在现代 Windows 系统中,系统提供了亮色主题和暗色主题,Windows 自带的应用程序都已经适配该功能。本文介绍在使用 WPF 构建 Windows 窗口应用时怎么实现主题切换。

查看原文

WPF 入门系列

WPF 全称为 Windows Presentation Foundation,是微软为 .Net 平台打造的一个 Windows 桌面应用程序的UI开发框架。使用 XAML 来描述界面代码,提供了丰富的图形、动画、数据绑定和样式功能,允许设计和开发分离,支持创建高度交互、视觉效果丰富的用户界面。本系列将会带你从项目入手,学会 WPF 的使用。

查看原文

Nano Banana 一键生成手办

AI 技术越来越成熟,最近发布的 Nano Banana 大模型可以直接将图片上的人物形象变成一个 3D 的手办模型。

查看原文

IIS 设置跨域问题

之前说过nginx设置跨域,今天记录以下IIS设置跨域

查看原文