首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Silverlight/WPF中反转剪裁几何?

在Silverlight/WPF中反转剪裁几何,可以通过以下几种方法实现:

  1. 使用TransformGroup:

TransformGroup是一个组合多个Transform对象的容器,可以将多个Transform应用到一个元素上。例如,可以使用ScaleTransform和RotateTransform来反转剪裁几何。

代码语言:csharp
复制
<Grid>
    <Grid.Clip>
        <RectangleGeometry Rect="0,0,100,100">
            <RectangleGeometry.Transform>
               <TransformGroup>
                   <ScaleTransform ScaleX="-1" ScaleY="1" />
                    <RotateTransform Angle="0" />
                </TransformGroup>
            </RectangleGeometry.Transform>
        </RectangleGeometry>
    </Grid.Clip>
</Grid>
  1. 使用PathGeometry:

PathGeometry可以定义一个复杂的几何形状,可以通过设置其Figures属性来定义形状。例如,可以使用LineSegment和ArcSegment来反转剪裁几何。

代码语言:csharp
复制
<Grid>
    <Grid.Clip>
        <PathGeometry>
            <PathGeometry.Figures>
                <PathFigureCollection>
                    <PathFigure StartPoint="0,0">
                        <PathFigure.Segments>
                            <PathSegmentCollection>
                                <LineSegment Point="100,0" />
                                <LineSegment Point="100,100" />
                                <LineSegment Point="0,100" />
                            </PathSegmentCollection>
                        </PathFigure.Segments>
                    </PathFigure>
                </PathFigureCollection>
            </PathGeometry.Figures>
        </PathGeometry>
    </Grid.Clip>
</Grid>
  1. 使用CombinedGeometry:

CombinedGeometry可以将两个几何形状组合在一起,可以通过设置其Geometry1和Geometry2属性来指定要组合的几何形状。例如,可以使用RectangleGeometry和EllipseGeometry来反转剪裁几何。

代码语言:csharp
复制
<Grid>
    <Grid.Clip>
        <CombinedGeometry GeometryCombineMode="Exclude">
            <CombinedGeometry.Geometry1>
                <RectangleGeometry Rect="0,0,100,100" />
            </CombinedGeometry.Geometry1>
            <CombinedGeometry.Geometry2>
                <EllipseGeometry Center="50,50" RadiusX="50" RadiusY="50" />
            </CombinedGeometry.Geometry2>
        </CombinedGeometry>
    </Grid.Clip>
</Grid>

以上是在Silverlight/WPF中反转剪裁几何的几种方法,可以根据具体需求选择合适的方法来实现。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Silverlight 2 Beta 1学习资源

    Silverlight 2 Beta 1发布了,大家都介绍了怎么去下载安装了,晚上整理了一些资料放上来和大家共享: 1、Silverlight 2 Beta 1 控件代码以及单元测试,这是学习设计一个Silverlight2...(木野狐译) 第五部分:用 ListBox 和 DataBinding 显示列表数据 (木野狐译) 第六部分:使用用户控件实现主从表场景 第七部分:使用控件模板定制控件的观感 第八部分:使用WPF...Using Silverlight 2's DataGrid with WCF + LINQ to SQL: 这个15分钟的录像博客示范了如何在服务器上建造一个LINQ to SQL对象模型,然后用WCF...Simple Editing of Web Service Data in a DataGrid: Mike Taulty有一篇好贴,展示如何在服务器上建造WCF服务,然后从Silverlight 2客户端使用它来获取数据...Sorting with Silverlight 2's DataGrid Control: Silverlight 2 Beta1的DataGrid控件还没有内置的列数据排序支持(将在Beta2提供

    1.2K70

    如何使用Microsoft技术栈

    (单击放大图片) 尽量早日放弃Silverlight和Flash 虽然WinForms和Web表单这些旧的.NET技术依然占有一席之地,但是Silverlight和Flash这样的RIA容器绝对是出局了...虽然该技术依然在积极的开发,同时从理论上说它也能够渲染设备特定的HTML,但是在实践Web表单并没有发挥其真正的潜力。...企业桌面应用程序 对于小型应用程序,Microsoft的推荐列表依然包含WPF和WinForms。这种场景下他们还增加了C++和Win32/MFC。...控制反转 Microsoft在讨论依赖注入和控制反转容器上花费的大量时间简直令人惊讶。他们列出了9个单独的控制反转容器,其中最主要的一个是非附属于Microsoft的社区运行的项目。...为了“解耦”这些依赖,他们建议从构造函数移除这些依赖,然后使用控制反转容器进行注入。 Microsoft还提到应使用面向切面的编程添加一些其他的间接层,并且进一步注入依赖。

    1.4K60

    Silverlight 结构分析

    本文的重点在于探讨Silverlight的整体架构,以及Silverlight应用程序是如何在浏览器运行的,各个子部分的作用是什么。 1.     ...该Assembly会调用agcore来进行绘制,以及coreclr来创建CLR,Silverlight应用程序就是依赖于这个CLR而被运行的。...其他的DLL文件在WPF的类库中都有,只不过现在尺寸小了很多,这是作为浏览器应用所必须的。 下图是Silverlight architecture的图例,你可以把上面的DLL对号入座: ?...运行 3.1  Silverlight运行环境 Silverlight应用程序被托管在浏览器,通过Silverlight插件加载CoreCLR,然后CoreCLR为应用程序创建AppDomian,最后初始化...3.2  Silverlight运行顺序 最后我们看一下Silverlight应用在浏览器是如何被执行的: -   浏览某个带有Silverlight的网页 -   浏览器加载Plug-in -

    89580

    AgileEAS.NET SOA 中间件平台5.2版本下载、配置学习(四):开源的Silverlight运行容器的编译、配置

    AgileEAS.NET SOA中间件平台提供了敏捷快速开发软件工程的最佳实践,通过提供大量的基础支撑功能IOC、ORM、SOA、分布式体系及敏捷并发开发方法所支撑的插件开发体系,以及提供了大量的实体...“敏捷并行开发思想事件”、结合“插件开发&整合”思路、AgileEAS.NET SOA中间件平台的数据访问并结合AgleEAS.NET SOA件的SOA分布式通信技术。     ...AgileEAS.NET SOA 中间件平台Silverlight运行容器为开发人员带来如下好处:      1.)开发Silverlight应用同开发WinForm/WPF/WebForm/WebMVC...2.)Silverlight应用同其他WinForm/WPF/WebForm/WebMVC应用使用同样的分布式服务端平台。     ...3.)Silverlight应用同其他WinForm/WPF/WebForm/WebMVC应用使用同样的服务端业务代码。

    70180

    本地化入门

    3.2 动态切换语言 在Silverlight已没有了x:Static的绑定方式,改为使用Binding实现本地化,这样虽然语法复杂一些,但更加实用。WPF当然也可以使用这种方式。...支持Binding的其它功能,IValueConverter。 兼容性好,Silverlight及之后的XAML技术都可以使用。 第三方工具支持。 支持图片、音频等资源。...结语 这篇文章只介绍了本地化的入门知识,其它还有很多本地化的要点,验证信息的本地化没有涉及。...WPF 全球化和本地化概述里有介绍一些本地化的最佳做法,UI上应该使用相对布局而非绝对布局、字体选择等,这里不再累赘。...参考 WPF 全球化和本地化概述 Silverlight 部署和本地化 WPFLocalizationExtension WPF Localization Guidance XAML Resources

    2.5K20

    Silverlight游戏设计(Game Design):(十四)练习用游戏素材资源的获取及相关工具使用心得…

    推荐一,免费的RPG游戏素材资源提取工具:RPGViewer RPGViewer为目前国内最强大的RPG游戏素材提取工具,能提取上百款国内外游戏客户端的资源(音乐、图片、模型等等),更可贵的是该软件仍保持着更新...2、浏览菜单可以对资源的各种动画(精灵动作、武器动画、魔法动画等)以及各动画的所有帧进行分帧查看。...3、导出菜单可以选择对资源封包进行相应的导出操作,导出单图、导出系列帧、导出所有帧、以及自定义范围导出和多文件导出等。...PS: 从帝国时代的素材分解我们不难看出开发者们将素材进行了压缩封包,当然,对于Silverlight这样基于浏览器运行且目前极大依赖于CPU的应用程序来说,如果也想做到将大量图片资源下载后再解包,过程的巨大性能消耗可想而知.../Silverlight小组 WPF/Silverlight博客团队) 本文版权归作者和博客园共有,欢迎转载。

    1.3K10

    针对构架师的.NET 3.0介绍

    XAML是一个基于XML的声明性语言,通过XML定义对象和它们的属性,允许客户声明性地开发工作流(WF)和身临其境的用户体验(WPF)。让我们来浏览一下.NET 3.0框架关键支柱的更详细内容。...WCF可以和现有的投资互操作,并结合和扩展现存的微软分布式系统技术,:Enterprise Services、System.Messaging、Microsoft .NET Remoting、ASMX...这个阅读器是一个基于WPF的应用程序,运行在Internet Explorer浏览器,就是指所谓的XBAP(可扩展浏览器应用程序)——这是一个用于代替浏览器的ActiveX功能的技术。...近来另外一个需要更多关注的技术是WPF Everywhere(WPF/E),它现在的官方名字叫SilverLight。请记住,SilverLight不是.NET 3.0框架的一部分。...你能在http://www.microsoft.com/silverlight中找到更多信息并观看一些演示。

    1.3K60

    精通 WPF UI Virtualization

    为了解决这个问题,这两天看了许多文章并学习了 WPF UIV 的知识,在最后终于解决了,待写下此文予以记录。     先来看看实现 UIV 前: ?...解决方案      其实,相关的 UIV 知识点有那么几个: WPF 的 VirtualizingStackPanel 只支持一层数据的 UIV。...相关资源 一篇通俗易懂的 UIV 概念文章:《UI Virtualization》,其中讲到了 WPFSilverLight 的 UIV。...原因其实也和 UIV 有关: 目前 WPF 的控件在 Group 分组后是不支持 UI Virtualization 的,原因是当 ScrollViewer.CanContentScroll 设置为...《WPF - Virtualizing an ItemsControl》:文中指出,ItemsControl 默认不支持 UI Virtualization,原因是它的模板没有一个 ScrollViewer

    2.4K90
    领券