当 UI 对象部分位于屏幕之外时,如何强制 UI 对象不被剪切。我的图像不完全适合屏幕。当我拖动它(TranslateY)时,它会像预期的那样移动,但问题是屏幕之外的部分没有出现,因此图像被突然剪切。图像中唯一明显移动的部分是最初适合屏幕的部分。
诗。请不要推荐 scollviewer,因为这是一个在 UI 上执行特定操作的手势,而 ScrollViewer 不适合这样做。
这基本上是 XAML(图像是显示器高度的两倍)
<Grid x:Name="GestureScreen" ManipulationMode="TranslateY" RenderTransformOrigin="0.5,0.5">
<Image x:Name="GestureImage" CacheMode="BitMapCache" Source="Assets/bg/draggable.png" />
</Grid>
这是 C#(不太相关,但仍然如此)
void GestureScreen_ManipulationDelta(object sender, ManipulationDeltaRoutedEventArgs e)
{
move.Y += e.Delta.Translation.Y;
}
最佳答案
为图像指定行和列,直接为两者指定自动
。这样,图像的大小将调整为其实际大小,而不是屏幕大小的 *
默认 的当前大小。因此,您将拖动整个图像。
关于xaml - 图像翻译被剪裁(如何防止),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26257935/