C# 捕获用于流式处理的透明WPF窗口

C# 捕获用于流式处理的透明WPF窗口,c#,wpf,streaming,transparency,C#,Wpf,Streaming,Transparency,我的问题是(出于某种原因),当我试图捕获透明的WPF窗口以便使用流媒体时,它会显示为完全黑色 当我设定这个的时候: AllowsTransparency = true; 软件无法再渲染窗口。它只是变成了一个黑色的矩形。无论窗口是否真正透明,都会发生这种情况 ,但我(从那里的一位开发人员那里)得到的唯一答案是,这只是一个限制,没有解决方案 什么是有效的: 捕获整个屏幕将正确显示窗口 设置colorkey以创建透明度 但这些都是不可接受的“解决方案”。我需要能够捕获窗口本身,而无需修改或降低

我的问题是(出于某种原因),当我试图捕获透明的WPF窗口以便使用流媒体时,它会显示为完全黑色

当我设定这个的时候:

AllowsTransparency = true;
软件无法再渲染窗口。它只是变成了一个黑色的矩形。无论窗口是否真正透明,都会发生这种情况

,但我(从那里的一位开发人员那里)得到的唯一答案是,这只是一个限制,没有解决方案

什么是有效的:

  • 捕获整个屏幕将正确显示窗口
  • 设置colorkey以创建透明度
但这些都是不可接受的“解决方案”。我需要能够捕获窗口本身,而无需修改或降低性能


然后问题就变成了:如何使其工作?

当您将窗口设置为透明时,您只是在显示背景色。你想要的是一个分层的窗口。请参阅:。我找不到最近的东西。但您可以使用CreateWindowEx()创建分层窗口。请看:是的,这是我创建的分层窗口。它很好用。这不是问题所在。