PivotItem 内椭圆上的 RotateTransform

发布于 2024-10-18 22:47:21 字数 1152 浏览 1 评论 0原文

我是 WPF/Silverlight 新手,我只是在玩我的新 Windows Phone 7。

我创建了一个新的 Pivot 应用程序并将其更改为以下代码:

<Grid x:Name="LayoutRoot" Background="Transparent">
        <!--Pivot Control-->
        <controls:Pivot Title="MY APPLICATION">
            <!--Pivot item one-->
            <controls:PivotItem Header="first">
                <Ellipse Width="300" Height="300" Fill="Red">
                    <Ellipse.RenderTransform>
                        <RotateTransform CenterX="150" CenterY="150" Angle="90"/>
                    </Ellipse.RenderTransform>
                </Ellipse>
            </controls:PivotItem>
            <controls:PivotItem Header="second">
                <Ellipse Width="300" Height="300" Fill="Blue"/>
            </controls:PivotItem>
        </controls:Pivot>
    </Grid>

在第一个枢轴项上,如果您开始在椭圆上滑动,需要向上滑动才能移动到下一个枢轴项。如果您从椭圆外的某处开始滑动,则滑动手势将按预期向左向右。

我非常确定这对于 XAML 老手来说是显而易见的,我不太确定应该如何防止手势受到 RotateTransform 的影响?

任何帮助表示赞赏。

编辑:

我想我已经弄清楚了。如果我在椭圆上设置 IsHitTestVisible="False" 那么一切都会按预期工作。

I'm new to WPF/Silverlight and I'm just playing about with my new Windows Phone 7.

I created a new Pivot application and changed it to the following code:

<Grid x:Name="LayoutRoot" Background="Transparent">
        <!--Pivot Control-->
        <controls:Pivot Title="MY APPLICATION">
            <!--Pivot item one-->
            <controls:PivotItem Header="first">
                <Ellipse Width="300" Height="300" Fill="Red">
                    <Ellipse.RenderTransform>
                        <RotateTransform CenterX="150" CenterY="150" Angle="90"/>
                    </Ellipse.RenderTransform>
                </Ellipse>
            </controls:PivotItem>
            <controls:PivotItem Header="second">
                <Ellipse Width="300" Height="300" Fill="Blue"/>
            </controls:PivotItem>
        </controls:Pivot>
    </Grid>

On the first pivot item, if you start your swipe over the ellipse, it is necessary to swipe upwards to move to the next pivotitem. If you begin the swipe somewhere outside of the ellipse, the swipe gesture is left right as expected.

I'm pretty sure that this is will be obvious to a XAML veteran, I'm not really sure how I should be preventing the gesture being affected by the RotateTransform too?

Any help appreciated.

Edit:

I think that I have figured this out. If I set IsHitTestVisible="False" on the Ellipse then it all works as expected.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文