我正在尝试从代码隐藏在我的应用程序中做一个随机的瓷砖翻转动画。计时器应该使随机图块每 3 秒翻转一次。我一直在互联网上搜索如何执行这样的动画,但我似乎找不到任何有效的方法。
视图如下,一个容器视图包含两个应该相互翻转的视图。一个是图像,在另一个视图中有两个文本块
//Create single news container
Canvas container = new Canvas
{
Height = viewHeight,
Width = viewWidth,
MaxWidth = viewWidth,
MaxHeight = viewHeight,
Margin = new Thickness(viewX, viewY, 0, 0)
};
//Create image container
Canvas imageContainer = new Canvas
{
Height = viewHeight,
Width = viewWidth,
MaxWidth = viewWidth,
MaxHeight = viewHeight,
Background = new SolidColorBrush(Colors.Transparent),
Visibility = Visibility.Collapsed
};
//Create title and leadtext container
Canvas textContainer = new Canvas
{
Height = viewHeight,
Width = viewWidth,
MaxWidth = viewWidth,
MaxHeight = viewHeight,
Background = GetCategoryColor(news.Cat[0]),
Visibility = Visibility.Visible,
};
//Set image source and crop image accordingly
var image = new BitmapImage(new Uri(news.ImageUrl[0]));
var viewImage = new Image
{
Source = image,
Height = viewHeight,
Width = viewWidth,
MaxWidth = viewWidth,
MaxHeight = viewHeight,
Stretch = Stretch.UniformToFill
};
//Set header view
TextBlock title = new TextBlock
{
MaxHeight = titleHeight,
MaxWidth = titleWidth,
Height = titleHeight,
Width = titleWidth,
Text = news.Title,
Margin = new Thickness(titleX, titleY, 0, 0),
Padding = new Thickness(framePadding),
Foreground = new SolidColorBrush(Colors.White),
TextWrapping = TextWrapping.Wrap,
FontWeight = FontWeights.Bold,
FontSize = 22,
FontFamily = new FontFamily("Calibri"),
TextTrimming = TextTrimming.WordEllipsis
};
//Set ingress view
TextBlock leadText = new TextBlock
{
MaxHeight = leadTextHeight,
MaxWidth = leadTextWidth,
Height = leadTextHeight,
Width = leadTextWidth,
Margin = new Thickness(leadTextX, leadTextY, 0, 0),
Padding = new Thickness(framePadding, 0, framePadding, framePadding),
Text = news.LeadText,
Foreground = new SolidColorBrush(Colors.White),
TextWrapping = TextWrapping.Wrap,
FontSize = 18,
FontFamily = new FontFamily("Calibri"),
TextTrimming = TextTrimming.WordEllipsis
};
//Add subviews to container and viewlist
imageContainer.Children.Add(viewImage);
textContainer.Children.Add(title);
textContainer.Children.Add(leadText);
container.Children.Add(imageContainer);
container.Children.Add(textContainer);
_viewsList.Add(container);
//Add single news container to main content canvas
ContentCanvas.Children.Add(container);
希望有人可以在这里帮助我!