我想将上下文菜单附加到旋转的图像(例如90度)。 它可以工作,但是当出现上下文菜单时,图像会向右移动。有时它几乎完全脱离屏幕,有时不是,取决于它的'原来的位置。 问题:
这就是它没有上下文菜单的样子:
图像当然是按比例缩放的。 以下是生成此内容的相关代码:
Canvas _can = new Canvas();
_can.Width = 480;
_can.Height = 260;
Image _resImg = new Image();
BitmapImage bimp = new BitmapImage();
properOrient = 1;
bimp = GetImageFromIsolatedStorage("new" + step.ToString() + ".jpg");
_resImg.Source = bimp;
_resImg.Height = 260;
_resImg.Width = 260;
_resImg.Stretch = Stretch.UniformToFill;
RotateTransform _rT = new RotateTransform();
_rT.Angle = 0;
if (properOrient == 6)
_rT.Angle = 90;
if (properOrient == 3)
_rT.Angle = 180;
_rT.CenterX = 130;
_rT.CenterY = 130;
_resImg.RenderTransform = _rT;
_resImg.Margin = new Thickness(0, 0, 0, 0);
ContextMenu _cms = new ContextMenu();
MenuItem _mitm = new MenuItem() {
Header = AppResources.ResourceManager.GetString("ApplicationBarDelete", AppResources.Culture),
Tag = "delete"
};
_cms.Items.Add(_mitm);
ContextMenuService.SetContextMenu(_resImg, _cms);
_can.Children.Add(_resImg);
任何想法可能是什么原因造成的? 如果旋转角度设置为0,则问题仍然存在。 如果没有应用rotateTransform,一切都会像它应该的那样工作。 该设备是HTC 8s,尽可能更新。
答案 0 :(得分:2)
问题是"缩小"上下文菜单的功能。 它似乎只是删除了基本上应用于任何元素的一些转换。我没有找到任何其他解决方法,除了禁用缩放,在XAML或代码中使用IsZoomEnabled = false。
我希望它可以帮助别人!