使用 WPF 对象在另一个对象上“打孔”?

2024-04-12

我有一个椭圆,它只是一个圆。我的问题是我想从大圆的中间切出一个圆形的孔,但似乎没有任何效果。我尝试过不透明蒙版,但没有任何效果。

更复杂的是,大圆圈具有 DropShadowEffect。但因为这个圆圈是稍微透明的,所以你可以看到它后面有一个很大的阴影圆圈。这实际上并不是模型的样子,我想知道是否有办法让阴影只出现在圆的边缘周围,无论所述圆有多透明。

Thanks!


例如这样:

<Canvas>
<Path Stroke="Black">
  <Path.Data>
    <CombinedGeometry GeometryCombineMode="Exclude">
      <CombinedGeometry.Geometry1>
        <EllipseGeometry Center="100,100" RadiusX="100" RadiusY="100"></EllipseGeometry>
      </CombinedGeometry.Geometry1>
      <CombinedGeometry.Geometry2>
        <EllipseGeometry Center="100,100" RadiusX="80" RadiusY="80"></EllipseGeometry>
      </CombinedGeometry.Geometry2>
    </CombinedGeometry>
  </Path.Data>
</Path>
</Canvas>

对于阴影:这也应该解决,因为生成的对象is实际上是一个带有整体的圆圈,而不仅仅是一个不透明度 - “技巧”

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

使用 WPF 对象在另一个对象上“打孔”? 的相关文章

  • 如何在MVVM中管理多个窗口

    我知道有几个与此类似的问题 但我还没有找到明确的答案 我正在尝试深入研究 MVVM 并尽可能保持纯粹 但不确定如何在坚持模式的同时启动 关闭窗口 我最初的想法是向 ViewModel 发送数据绑定命令 触发代码来启动一个新视图 然后通过 X
  • 当其他列子项折叠时调整 WPF 网格列的大小?

    我有两个控件Grid 并且需要制作一个来填充所有Grid另一个获得后的空间Collapseded 我不知道什么Container我可以使用吗 我试过了StackPanel and DockPanel我也是 但找不到好的解决方案 这是我的代码
  • 异步WCF调用来保存线程?

    In 另一个问题 https stackoverflow com q 19731600 279516 建议我发送异步网络请求 而不是在后台线程上发送同步请求 原因是为了不浪费一根线 我试图理解这是怎么回事 这是最初的做法 我可以理解这里怎么
  • 如何防止在 ActiveX 方法调用期间重新进入 WPF 事件处理程序?

    我们从 WPF 和 STA 应用程序中调用 ActiveX 组件上的方法 此调用是通过以下方式后期绑定执行的 res ocx GetType InvokeMember methodName flags null ocx args 其中 oc
  • 如何在清除排序描述后删除wpf网格排序箭头

    我单击网格标题对列进行排序 然后单击 重置 按钮以通过其集合视图清除排序描述 但排序箭头图标仍然保留在标题中 如何去除它 我在尝试弄清楚如何完全清除网格中的排序时遇到了这个问题 感谢 krishnaaditya 回答如何清除标题中的排序箭头
  • 如何将文本放在 RadioButton 的顶部

    我正在尝试实现附件中显示的效果 但没有成功 甚至有可能吗 我试图将文本框放在单选按钮内 并将其设置为水平和垂直内容对齐 但它没有按我想要的方式工作 欢迎任何建议 Resource
  • XAML 构建的本地 TFS 到 VSTS 迁移

    目前 我们在本地使用 TFS 2017 update 1 但我们必须在 VSTS 云平台上迁移 TFS 此外 我们还使用自定义构建模板在本地使用 TFS 构建服务器进行 XAML 构建 我们的问题是迁移后所有 XAML 构建定义是否都能正常
  • WPF DataGridTemplateColumn 组合框更新所有行

    我有这个 XAML 它从 ItemSource 是枚举的组合框中选择一个值 我使用的教程是 http www c sharpcorner com uploadfile dpatra combobox in datagrid in wpf h
  • 打印大型 WPF 用户控件

    我有一个巨大的数据 我想使用 WPF 打印 我发现WPF提供了一个PrintDialog PrintVisual用于打印派生的任何 WPF 控件的方法Visual class PrintVisual只会打印一页 因此我需要缩放控件以适合页面
  • 如何从WPF中的数据网格中获取单元格的值? [复制]

    这个问题在这里已经有答案了 可能的重复 从 DataGrid 中选择 DataGridCell https stackoverflow com questions 9978119 select datagridcell from datag
  • WPF - 位图效果上的编程绑定

    我希望能够以编程方式将一些数据绑定到 a 上的依赖属性位图效果 对于像 TextBlock 这样的 FrameworkElement 有一个 SetBinding 方法 您可以通过编程方式执行这些绑定 例如 myTextBlock SetB
  • 如何销毁或分离 CollectionView

    我观察到 WPF ItemsControls 的奇怪行为 如果将 ItemsSource 设置为实现INotifyCollectionChanged然后设置ItemsSource为空 则CollectionView创建它是为了向 Items
  • 具有依赖属性的值转换器

    我在实现自定义 DependencyObject 时遇到问题 我需要一个转换器来设置或取消设置绑定属性中的枚举标志 因此 我创建了一个从 FrameworkElement 派生的 IValueConverter 它具有两个 Dependen
  • 如何将一个控件的属性绑定到另一个控件的属性?

    我希望当表单被禁用时 表单中的 保存 按钮消失 我这样做 this formStackPanel IsEnabled someValue if this formStackPanel IsEnabled this saveButton Vi
  • 使用 Assembly.ReflectionOnlyLoadFrom 加载 WPF 项目引用的程序集时出现奇怪的 FileLoadException

    我有一个自定义 MSBuild 任务 可以查看程序集内部以获取一些属性元数据 Assembly assembly Assembly ReflectionOnlyLoadFrom AssemblyFile 这是我们的自动化构建 发布流程所使用
  • WPF 4.0 InvokeCommandAction 兼容性 (System.Windows.Interactivity)

    当我在 WPF 4 0 中插入 InvokeCommandAction Blend 4 SDK 时遇到问题 用户控件未显示 并且我遇到了一些例外情况 登录底部 如果我的 xaml 代码中没有该行 就没有问题 但没有事件触发器 我已经在外部灯
  • Control.Focus() 和 FocusManager.SetFocusedElement() 之间的区别

    从字面上看 我想知道这一点 在某些情况下 Focus 看起来比 SetFocusedElement 更好 但另一种情况 则是逆转 所以我必须知道那里有什么不同的东西 另外 根据 MSDN Focus 用于键盘焦点 SetFocusedEle
  • MVVM 消息传递或事件或其他什么选项?

    我在 MainViewModel 中有一个菜单 现在在选择特定的菜单项时我想更新已加载的视图的数据 即 虽然 MainViewModel 中有该 viewModel 的实例 但当我尝试通过该实例调用该方法并更改数据属性时 它不会显示视图中的
  • 以编程方式更改 StackPanel 在 Canvas 上的位置

    我在画布上有堆栈面板 堆栈面板有
  • 用 C# 编写的带有点击移动的 WPF 游戏

    我试图将标签网格移动到鼠标的位置 就像冒险游戏中的移动一样 理想情况下 我会在途中删除并重新绘制它们 但是 现在我只想弄清楚如何将 int 转换为厚度或 pointtoscreen 到目前为止我有 player XMove int Mous

随机推荐

  • 使用 OpenSSL 进行加密,方式与 Java 相同

    我必须使用 bash 脚本加密字符串 就像使用 javax crypto Cipher 加密一样 在java中 我使用AES 256和密钥 0123456789 但是当我使用openssl时 我必须将 0123456789 转换为十六进制
  • 将图片插入 JTextPane

    在我的记事本应用程序中 我尝试添加图像 就好像它是JLabel into a JTextPane通过单击JMenuItem called Picture private class Picture implements ActionList
  • 如何向我的服务器添加线程?

    我是 Java 初学者 我有一个任务是构建 P2p 文件共享 Java 应用程序 我首先创建服务器和客户端 客户端可以向服务器发送消息 服务器做出响应 我相信下一步应该是将线程插入服务器类中 我阅读了所有相关内容并尝试了它 但我就是无法成功
  • 以编程方式比较图像 - lib 或类 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何使用Windows安全描述符来阻止执行其他应用程序?

    在我最近关于使用 CreateDesktop API 调用创建新桌面并在其中执行我自己的应用程序并防止其他应用程序在我的桌面中执行的问题之一中 有人指出我使用安全描述符 这里有人可以告诉我该怎么做吗 提前致谢 所有命名对象 包括您创建的桌面
  • 如何知道 QLineEdit 是否获得焦点?

    我想知道是否在QLineEdit一声点击 所以我想我应该重新实现以下函数 void QLineEdit focusInEvent QFocusEvent e virtual protected 我该怎么做呢 另外请告诉我如何使用focusI
  • 在Python中更改文件头的有效方法

    我正在尝试编写一个 python 脚本来更新一些大文件的标头 仅第一行 但是由于新标头不必与原始标头的大小 以字节为单位 相同 无论如何我可以更改标题而不触及大文件的其余部分 或者我必须通读所有内容并将它们写回文件 不 您可以在不触及整个文
  • Ember 中可靠的视图

    我有一个列出专辑的应用程序 当同时点击专辑时AlbumView and App overlay 也是一个视图 被显示 App overlay Ember View create 类似灯箱的叠加 and App AlbumView Ember
  • 从不同线程写入相邻的数组元素?

    是否有任何现代的常见 CPU 从不同线程同时写入数组的相邻元素是不安全的 我对 x86 特别感兴趣 您可能会认为编译器不会做任何明显荒谬的事情来增加内存粒度 即使它在技术上符合标准 我对编写任意大结构的情况感兴趣 而不仅仅是本机类型 Not
  • 有没有办法在 Linux 上使用 QFileDialog 自动向文件添加扩展名

    我希望用户能够输入将保存为 xml 文件的文件的名称 目前在 Windows 和 Mac 上 如果您输入 test 作为文件名 它会自动添加 xml 这就是我想要的 不幸的是 在测试 Linux 版本时 我发现输入不带扩展名的文件名会保存为
  • 如何安装 Dart v2?

    我浏览了 Dart 官方网站 他们深入探讨了 开发 渠道和 稳定 渠道 但对如何实际安装 SDK 版本一无所知 也没有有关当前稳定版和开发版的信息 显然我错过了隐藏在普通网站中的东西 我想尝试一些官方的 angulardart 组件库 但构
  • ASP.NET Gridview 中没有时间的日期格式

    在 ASP NET gridview 中绑定两个日期 我要显示dd MM yyyy但它显示10 03 2014 00 00 00
  • 如何在 Android 上保持在后台监听推送通知

    我正在研究 Android 中的推送通知 现在的问题是 我想在应用程序启动后立即在后台运行推送通知 因为我不知道服务器何时将数据推送到设备 主要要求是我们的企业应用程序有超过 10 个活动 并且根据收到的通知 我必须将相关活动置于前台 以便
  • 如何使用maven操作Manifest文件

    我有一个用 Maven 构建的 EAR 文件 EAR 包含多个 jar 我需要在清单文件中为其中一个 jar 添加一行 我知道 maven jar plugin 选项 manifestEntries 但这对于单个独立 jar 很有用 而不是
  • MySQL 实体框架错误 - 在配置中找不到指定的存储提供程序,或者指定的存储提供程序无效

    我用 C 编写了一个程序集来执行 MySQL 数据库的所有数据访问 我已在我的 C winform 桌面应用程序中成功使用了该程序集 已编译的 dll 但它仅适用于安装了 MySQL Connector Net 6 4 4 的电脑 我尝试在
  • Java 优化器会删除空方法调用的参数构造吗?

    假设我有这样的代码 log info Now the amount amount seems a bit high 我将用虚拟实现替换 log 方法 例如 class Logger public void info 如果没有检测到副作用 优
  • 如果 call_user_func 返回 false 该怎么办?

    我正在调用的函数call user func应该返回FALSE 那么如果可调用无效 我如何检测错误呢 旁注 为什么他们没有抛出异常而不是返回错误代码 或者有没有办法 捕获 错误 我有一个错误句柄 我应该让它为我抛出异常吗 如果你想检查要调用
  • 如何在 C# 中验证 localhost 的 url

    我在 MVC 中使用 UrlAttribute 但它不接受本地主机网址 例如http localhost GCWeb http localhost GCWeb Url ErrorMessage please enter valid ftp
  • 如何在没有互联网的情况下通过 wifi 提供网站服务?

    我想通过开放的 wifi 连接提供网站服务 但我不希望此 wifi 连接能够访问互联网 这是否可能以及我将如何去做 我已经在本地设置了网站 并通过本地主机或 IP 地址在浏览器中进行了访问 但我不确定如何设置网络服务器并通过 wifi 为网
  • 使用 WPF 对象在另一个对象上“打孔”?

    我有一个椭圆 它只是一个圆 我的问题是我想从大圆的中间切出一个圆形的孔 但似乎没有任何效果 我尝试过不透明蒙版 但没有任何效果 更复杂的是 大圆圈具有 DropShadowEffect 但因为这个圆圈是稍微透明的 所以你可以看到它后面有一个