在 Windows 商店应用程序中创建相似的选取框
Creating a marquee lookalike in Windows Store Apps
我正在尝试创建与此等效的内容(html)
<marquee behavior="alternate">Your bouncing text goes here</marquee>
在 Windows 商店应用程序中,使用 C#
是否有任何控件可以执行此操作,还是我必须创建一个自定义控件?
Windows 商店应用程序中没有 Marquee 控件。
我设法找到了与您正在尝试做的事情类似的代码。去看看WPF Marquee Text Animation。如果您尝试使用该代码,您应该能够获得想要的结果
与 Marquee 的主要区别在于,一旦到达屏幕边缘,您就想从另一条路返回。像获取 textblock
和 grid
的 Width
并减去它们这样简单的事情可以得到想要的结果
一种方法是这样的:
获取控件的宽度差异
int TotalMargin = gridTest.Width - textblocktest.Width
然后您需要不断增加保证金的价值
if textblocktest.Margin.Left < TotalMargin {
textBlock.Margin = New Thickness(textblock.Margin.Left + aNumber,0,0,0)
}
else{
//Call a procedure doing the same thing but decrementing the margin until it is at 0 and then going back to adding margin
}
我正在尝试创建与此等效的内容(html)
<marquee behavior="alternate">Your bouncing text goes here</marquee>
在 Windows 商店应用程序中,使用 C# 是否有任何控件可以执行此操作,还是我必须创建一个自定义控件?
Windows 商店应用程序中没有 Marquee 控件。
我设法找到了与您正在尝试做的事情类似的代码。去看看WPF Marquee Text Animation。如果您尝试使用该代码,您应该能够获得想要的结果
与 Marquee 的主要区别在于,一旦到达屏幕边缘,您就想从另一条路返回。像获取 textblock
和 grid
的 Width
并减去它们这样简单的事情可以得到想要的结果
一种方法是这样的:
获取控件的宽度差异
int TotalMargin = gridTest.Width - textblocktest.Width
然后您需要不断增加保证金的价值
if textblocktest.Margin.Left < TotalMargin { textBlock.Margin = New Thickness(textblock.Margin.Left + aNumber,0,0,0) } else{ //Call a procedure doing the same thing but decrementing the margin until it is at 0 and then going back to adding margin }