首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Silverlight 4 ContextMenu和ScaleTransform

Silverlight 4 ContextMenu和ScaleTransform
EN

Stack Overflow用户
提问于 2011-04-26 06:47:47
回答 1查看 513关注 0票数 0

Silverlight4Toolkit提供的ContextMenu工作得很好,直到我在我的XAML中实现了一个<RenderTransform>标记,以便让Silverlight应用程序缩放以适应整个浏览器窗口(遵循this小教程)。

在本教程开始之前,我的XAML看起来像这样:

代码语言:javascript
复制
<UserControl>
    <Grid>
        <!-- Rest of app here... -->
    </Grid>
</UserControl>

现在,我的应用程序看起来像:

代码语言:javascript
复制
<UserControl>
    <Canvas>
        <Canvas.RenderTransform>
            <ScaleTransform [vars]></ScaleTransform>
        </Canvas.RenderTransform>
        <Grid>
            <!-- Rest of app here... -->
        </Grid>
    </Canvas>
</UserControl>

缩放效果很好,但现在当我右键单击时,ContextMenu不会出现在它应该出现的地方(在鼠标下方)。相反,它显示在与鼠标相同的x位置,但它显示在应用程序的最顶端。它的buggy也很多,我必须不断点击才能让它消失,我不能在其他地方右击来再次打开它,而且它不能随着应用程序的其余部分进行缩放。

这可能是什么原因造成的?有没有正确的方法来解决这个问题,或者我应该只对菜单应用一个偏移量来将其移动到鼠标上?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-26 06:56:23

您将需要通过缩放转换的逆值传递光标坐标,以将屏幕点转换为您的应用程序可以理解的点。

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

https://stackoverflow.com/questions/5784134

复制
相关文章

相似问题

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