首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在XAML中,如何保持椭圆是圆?

在XAML中,如何保持椭圆是圆?
EN

Stack Overflow用户
提问于 2009-05-25 20:22:01
回答 3查看 19.3K关注 0票数 19

我担心我的XAML看不见了。我正在开发一个MS Surface应用程序,并且在ScatterViewItem (终端用户可以调整大小的容器)中有一个椭圆。我想让椭圆保持为一个圆形(width == height),并尽可能地保持它的大小(对于椭圆的宽度/高度属性,应该取SVI的宽度/高度的最小值)。

最好使用仅XAML解决方案(使用属性触发器或类似的解决方案)。

我们将一如既往地感谢您的帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-05-25 21:11:28

一个简单的Viewbox就能解决这个问题吗?例如。

代码语言:javascript
复制
<Viewbox xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    HorizontalAlignment="Center"
    VerticalAlignment="Center">
    <Canvas Width="100" Height="100">
        <Ellipse Fill="Red" Width="100" Height="100" />
    </Canvas>
</Viewbox>

Viewbox将缩放其内容以填充Viewbox的区域,并且在默认情况下按比例进行缩放。当Ellipse无法拉伸到完整大小时,指定的水平和垂直对齐将使其居中(由于按比例缩放)。

票数 15
EN

Stack Overflow用户

发布于 2012-10-02 21:58:33

几分钟前,我偶然发现了这个问题,并找到了一个比@Paul Betts更好的解决方案(如果可以,我会评论他的答案,但我不能)

您可以简单地使用<Ellipse Stretch="Uniform" />来获得一个圆。

来源:http://forums.silverlight.net/t/160615.aspx

票数 37
EN

Stack Overflow用户

发布于 2009-05-26 06:31:56

代码语言:javascript
复制
<Ellipse x:Name="anEllipse" Width={Binding Path=ActualHeight ElementName=anEllipse} />

如果你也做了一个相对绑定的话,你也许可以不用命名它。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/907951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档