2013-03-25 198 views
3

我正在尝试开发带圆角的ListView。 圆角属性正在工作,但是当顶部或底部项目被选中时,我遇到了一些问题。此时,圆角被替换。Windows商店应用程序角半径

选择其间的顶部和底部项目的部分节点是OK:

enter image description here

然而,这是顶部和底部的物品发生了什么:

enter image description here

*我知道的伎俩在.Net WPF应用程序中,您通常会在圆角处使用剪切。但是,WinRT似乎不支持裁剪中的圆角。

+0

试着看看http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.controls.itemscontrol.itemcontainerstyle我不知道它是否会做你的但它的值得一试。 – mydogisbox 2013-03-25 15:39:29

+0

现在你是如何四舍五入的?如果您的背景是纯色 - 最简单的方法是在角落顶部覆盖固体填充圆角。否则,您可能需要将'ItemContainerStyle'更新为建议的mydogisbox,并且可能会使高亮/选择栏变为圆形。 – 2013-03-25 16:29:12

+0

的确,我正在修改列表视图控件的ItemContainerStyle。在这种情况下,容器具有边界控制。我正在设置CornerRadius属性。 你的建议似乎是可行的(更像是你会在网页设计中执行的技巧)。我正在寻找一些其他的解决方案(可能更优雅或别的,因为我对XAML来说是新的) – d0kt0r1 2013-03-25 19:43:23

回答

2

呀,所以,看...

我来回答这个例子的问题:

<Border Width="100" Height="100" Margin="5" 
    Background="DimGray" CornerRadius="15"> 
</Border> 

<Border Width="100" Height="100" Margin="5" 
    Background="DimGray" CornerRadius="15"> 
    <Rectangle Height="100" Width="100" Fill="Purple" /> 
</Border> 

<Border Width="100" Height="100" Margin="5" Padding="5" 
    Background="DimGray" CornerRadius="15"> 
    <Rectangle Height="100" Width="100" Fill="Purple" /> 
</Border> 

<Border Width="100" Height="100" Margin="5" Padding="5" 
    Background="Purple" CornerRadius="15"> 
    <Rectangle Height="100" Width="100" Fill="Purple" /> 
</Border> 

是这样的:

enter image description here

而且,为什么呢?由于Windows 8中的裁剪目前仅支持矩形。不是多边形,不是圆角,不是任何东西。样本中的第四项是目前唯一的方法。至少你有一个选择!

祝你好运!

相关问题