WPF:如何使自定义模式对话框闪烁?

2023-11-23

通常,当您打开模态对话框并尝试单击其父窗口时,模态对话框的标题栏会闪烁。在 WPF 中创建自定义、无边框、无边框窗口时,您将失去所有功能,必须自行重建。我左顾右盼,终生不知道如何让我的模态窗口闪烁。虽然还是发出嘟嘟的声音...

我想我将不得不监视 WndProc 中必须处理的某些事件,但我无法弄清楚是哪个事件或如何执行它。我尝试观察窗口更改和窗口更改事件以及 WM_ACTIVATE 事件,但无济于事。我确信我只是错过了一些简单的事情,但我将不胜感激对此的任何帮助。谢谢!


private IntPtr WndProc(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
{
    var retVal = IntPtr.Zero;

    switch (msg)
    {
        case UnsafeNativeConstants.WM_NCACTIVATE:
            retVal = UnsafeNativeMethods.DefWindowProc(hwnd, UnsafeNativeConstants.WM_NCACTIVATE, new IntPtr(1), new IntPtr(-1));
            AssociatedObject.UpdateTitlebar((int)wParam == 1 ? true : false);
            handled = true;
            break;
    }

    return retVal;
}

The WndProc我已经连接到附加到我的窗口的自定义行为。它在我的窗口上调用一个内部方法,该方法将适当地更新标题栏的颜色。

感谢@Hans Passant 为我指明了正确的方向。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WPF:如何使自定义模式对话框闪烁? 的相关文章

  • 属性对象什么时候创建?

    由于属性实际上只是附加到程序集的元数据 这是否意味着属性对象仅根据请求创建 例如当您调用 GetCustomAttributes 时 或者它们是在创建对象时创建的 或者 前两个的组合 在由于 CLR 的属性扫描而创建对象时创建 从 CLR
  • 更改 WPF 应用程序清单?

    我已经发布给微软的评论 http connect microsoft com VisualStudio feedback ViewFeedback aspx FeedbackID 420920WPF 中的对话框未启用 VisualStyle
  • WPF PRISM 事件订阅不会消亡

    我有一个 PRISM RegionManager 其中有几个区域 顶部的功能区区域和其下方用于我的视图的主要内容区域 相当基本 该应用程序以主要内容区域中的 主页 视图开始 当我单击功能区上的按钮时 我将第二个视图注入内容区域并在区域管理器
  • 在 Xamarin Android 中将图像从 URL 异步加载到 ImageView 中

    我有一个包含多个项目的 ListView 列表中的每个项目都应该有一个与之关联的图像 我创建了一个数组适配器来保存每个列表项并具有我希望加载的图像的 url 我正在尝试使用 Web 请求异步加载图像 并设置图像并在加载后在视图中更新它 但视
  • 如何在C++中实现模板类协变?

    是否可以以这样一种方式实现类模板 如果模板参数相关 一个对象可以转换为另一个对象 这是一个展示这个想法的例子 当然它不会编译 struct Base struct Derived Base template
  • 嵌入式系统中的malloc [重复]

    这个问题在这里已经有答案了 我正在使用嵌入式系统 该应用程序在 AT91SAMxxxx 和 cortex m3 lpc17xxx 上运行 我正在研究动态内存分配 因为它会极大地改变应用程序的外观 并给我更多的力量 我认为我唯一真正的路线是为
  • 如何在我的应用程序中使用 Windows Key

    Like Windows Key E Opens a new Explorer Window And Windows Key R Displays the Run command 如何在应用程序的 KeyDown 事件中使用 Windows
  • 为什么 POSIX 允许在只读模式下超出现有文件结尾 (fseek) 进行搜索

    为什么寻找文件结尾很有用 为什么 POSIX 让我们像示例中那样在以只读方式打开的文件中进行查找 c http en cppreference com w c io fseek http en cppreference com w c io
  • 如何在 WPF RichTextBox 中跟踪 TextPointer?

    我正在尝试了解 WPF RichTextBox 中的 TextPointer 类 我希望能够跟踪它们 以便我可以将信息与文本中的区域相关联 我目前正在使用一个非常简单的示例来尝试弄清楚发生了什么 在 PreviewKeyDown 事件中 我
  • WPF 从主线程以外的其他线程截屏

    我有一个线程用于侦听 WPF 应用程序的命令 如果 WPF 应用程序收到截取屏幕截图的命令 则任务将移交给 screenshotService 我在互联网上的某个地方找到了一些代码来截取屏幕截图 似乎可以工作 但我还没有想清楚 我无法从另一
  • 当 Cortex-M3 出现硬故障时如何保留堆栈跟踪?

    使用以下设置 基于 Cortex M3 的 C gcc arm 交叉工具链 https launchpad net gcc arm embedded 使用 C 和 C FreeRtos 7 5 3 日食月神 Segger Jlink 与 J
  • .Net Core / 控制台应用程序 / 配置 / XML

    我第一次尝试使用新的 ConfigurationBuilder 和选项模式进入 Net Core 库 这里有很多很好的例子 https docs asp net en latest fundamentals configuration ht
  • 为什么模板不能位于外部“C”块内?

    这是一个后续问题一个答案 https stackoverflow com questions 4866433 is it possible to typedef a pointer to extern c function type wit
  • A* 之间的差异 pA = 新 A;和 A* pA = 新 A();

    在 C 中 以下两个动态对象创建之间的确切区别是什么 A pA new A A pA new A 我做了一些测试 但似乎在这两种情况下 都调用了默认构造函数 并且仅调用了它 我正在寻找性能方面的任何差异 Thanks If A是 POD 类
  • 用 C 实现 Unix shell:检查文件是否可执行

    我正在努力用 C 语言实现 Unix shell 目前正在处理相对路径的问题 特别是在输入命令时 现在 我每次都必须输入可执行文件的完整路径 而我宁愿简单地输入 ls 或 cat 我已经设法获取 PATH 环境变量 我的想法是在 字符处拆分
  • C 中的位移位

    如果与有符号整数对应的位模式右移 则 1 vacant bit will be filled by the sign bit 2 vacant bit will be filled by 0 3 The outcome is impleme
  • char指针或char变量的默认值是什么[重复]

    这个问题在这里已经有答案了 下面是我尝试打印 char 变量和指针的默认值 值的代码 但无法在控制台上看到它 它是否有默认值或只是无法读取 ASCII 范围 include
  • 如何连接字符串和常量字符?

    我需要将 hello world 放入c中 我怎样才能做到这一点 string a hello const char b world const char C string a hello const char b world a b co
  • 将 viewbag 从操作控制器传递到部分视图

    我有一个带有部分视图的 mvc 视图 控制器中有一个 ActionResult 方法 它将返回 PartialView 因此 我需要将 ViewBag 数据从 ActionResult 方法传递到 Partial View 这是我的控制器
  • 不同类型的指针可以互相分配吗?

    考虑到 T1 p1 T2 p2 我们可以将 p1 分配给 p2 或反之亦然吗 如果是这样 是否可以不使用强制转换来完成 或者我们必须使用强制转换 首先 让我们考虑不进行强制转换的分配 C 2018 6 5 16 1 1 列出了简单赋值的约束

随机推荐

  • 在生成器函数上使用 next()

    我有这个生成器功能 def gen for i in range 3 yield i i 现在当我打电话时next on gen 它每次都给出第一个元素 gt gt gt next gen 0 gt gt gt next gen 0 但是当
  • 如何将 R Markdown 转换为 HTML?即,“Knit HTML”在 Rstudio 0.96 中做什么?

    在 Rstudio 0 96 中的 R Markdown 文件上按 Knit HTML 时会运行哪些命令 我的动机是 当我在另一个文本编辑环境中时 我可能想运行相同的命令 或者我可能想将命令组合到更大的文本编辑器中 makefile 基本脚
  • 使用 Plink (PuTTy) 通过 Python 进行 SSH

    我正在尝试编写一个 python 脚本 它将通过 SSH 连接到服务器并执行命令 我在 Windows 上使用 Python 2 6 并安装了 plink 和 paegent 用于 ssh 密钥 并将它们全部添加到我的路径中 如果我转到命令
  • 改造 - 多部分请求:所需的 MultipartFile 参数“文件”不存在

    我正在尝试使用 Retrofit2 在服务器上发送文件 我按照文档做了一切 但总是收到 400 服务器错误 我尝试这样做 RequestBody body RequestBody create MediaType parse image p
  • 在括号中显示 p 值而不是 SE

    当使用stargazer包中 我想更改系数下括号中出现的值 默认情况下 包将输出标准错误 如何将实际 p 值包含在括号中 正如中提到的Stargazer 省略测试统计 从5 0版本开始stargazer已包括report允许用户选择要报告哪
  • 如何在自托管 Windows 代理上从 Azure DevOps 管道运行 Azure CLI 任务?

    情况 我的自托管 Windows 代理运行来自 Azure DevOps 的管道 到 管理 Azure 中的资源 我想使用 Azure CLI 任务 即使在前面的步骤中安装了 Azure CLI AzureCLI 任务也会失败 我有两个从我
  • 以编程方式执行单击 Actor libgdx

    我的问题很简单 我有一些ClickListener添加到 Actor 中 我想以编程方式对它们执行单击事件 就像是myActor performClick 您还可以使用 InputEvent event1 new InputEvent ev
  • 获取 SelectOneMenu 的选定值

    我正在 jsf 页面上测试组件 SelectOneMenu 我通过我的 ManageBean 动态地填充这个组件 将从数据库中获取所有动物 我想知道是否可以看到用户选择的 SelectOneMenu 组合框 项目 我正在尝试使用 value
  • 有主机和无主机的入口

    理解和调试入口规则确实变得越来越困难 有人可以分享一个好的参考吗 问题是在不指定主机的情况下入口如何工作 apiVersion extensions v1beta1 kind Ingress metadata annotations ngi
  • 如何使用git拉取特定目录

    我有一个使用 git 的项目 我只想克隆或拉取特定目录 例如 myproject javascript 就像 subversion 一样 进行一些更改 提交并再次推回 这是可能的 cd 到您的存储库副本的顶部 git fetch git c
  • 比较两个数组 Javascript - 关联

    我在这里搜索了一种比较 javascript 中关联数组的质量方法 我发现的唯一合适的解决方案是PHP JS项目具有一些比较数组功能 唯一的问题是这些函数将第一个数组视为第二个数组的键 在我的情况下 至少两个数组并不总是具有相同的键数或相同
  • ng-重复完成事件

    我想调用一些针对 div 和 table 的 jQuery 函数 该表填充有ng repeat 当我打电话时 document ready 我没有结果 Also scope on viewContentLoaded myFunc 没有帮助
  • 使用 ssl 模块的 HTTPS 代理隧道

    我想手动 使用socket and ssl模块 制作一个HTTPS通过本身使用的代理请求HTTPS 我可以执行初始操作CONNECT交换就好 import ssl socket PROXY ADDR proxy addr 443 CONNE
  • XSLT:将分组 html 元素移动到节级别

    我正在尝试编写一个 XSLT 根据标头级别将 HTML 文件组织为不同的部分级别 这是我的输入 h1 HEADER 1 CONTENT h1 p Level 1 para p p Level 1 para p p Level 1 para
  • 为什么我的随机数总是相同?

    我正在使用random numberFortran 的子例程 但在程序的不同运行中 生成的数字不会改变 我应该在代码中包含什么 以便每次编译和运行程序时数字都会发生变化 随机数生成器产生伪随机数 要每次运行获得不同的数字 您需要初始化随机种
  • 将 WPF 绑定错误转换为运行时异常。不适用于已发布的已发布应用程序

    我想将数据绑定错误记录到文件中 我使用了这个接受的答案中提出的解决方案 如何将绑定错误转化为运行时异常 我也尝试过这个 http msdn microsoft com en us library system diagnostics pre
  • javax.crypto 在不同版本的 Android 操作系统中工作方式不同吗?

    我使用此代码片段来加密 解密应用程序数据库中的数据 http www androidsnippets com encryptdecrypt strings 看来 javax crypto KeyGenerator generateKey 操
  • 在 JIRA REST API 中启用 CORS

    我在 Confluence 用户宏中从 JavaScript 调用 JIRA REST API 并且面临 CORS 问题 因为 JIRA 和 Confluence 位于两个不同的域中 并且飞行前请求从浏览器失败 我已经尝试了如下所述的几种
  • 多次构造的 Eager ApplicationScoped 托管 bean

    我有一堆eager ApplicationScoped托管豆 其中一些是通过注射到其他体内的ManagedProperty注解 形成依赖树 每个依赖 bean 在构建后都会操纵其父代 然而 似乎每次注入都会创建一个新实例 从而撤销之前的操作
  • WPF:如何使自定义模式对话框闪烁?

    通常 当您打开模态对话框并尝试单击其父窗口时 模态对话框的标题栏会闪烁 在 WPF 中创建自定义 无边框 无边框窗口时 您将失去所有功能 必须自行重建 我左顾右盼 终生不知道如何让我的模态窗口闪烁 虽然还是发出嘟嘟的声音 我想我将不得不监视