大佬教程收集整理的这篇文章主要介绍了silverlight应用(一):ScrollViewer 文字滚动,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
屏幕上有一固定区域,不断刷新即时信息,当文字超出显示区域时,将自动滚动。重点是利用ScrollViewer的VerticalOffset,ScrollableHeight属性和ScrollToVerticalOffset方法。
其中VerticalScrollBarVisibility="Hidden"用于将竖直滚动条隐藏。
<UserControl xmlns="@R_674_10107@://scheR_707_11845@as.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="@R_674_10107@://scheR_707_11845@as.microsoft.com/winfx/2006/xaml" xmlns:sdk="@R_674_10107@://scheR_707_11845@as.microsoft.com/winfx/2006/xaml/presentation/sdk" x:Class="SilverlightApplication1.MainPage" Width="640" Height="480"> <Grid x:Name="LayoutRoot" BACkground="White"> <Grid.resources> <Storyboard x:Name="board" Completed="board_Completed" BeginTime="0:0:1"/> </Grid.resources> <ScrollViewer Name="TestScrollViewer" VerticalScrollBarVisibility="Hidden" Margin="94,29,300,263"> <TextBlock Name="txt" textwrapping="Wrap" ></TextBlock> </ScrollViewer> <TextBlock Height="21" HorizontalAlignment="Left" Margin="371,68,0" Name="textBlock1" Text="VerticalOffset:" VerticalAlignment="Top" Width="89" /> <TextBlock Name="VerticalOffset" Height="30" HorizontalAlignment="Left" Margin="475,64,0" Text="" VerticalAlignment="Top" Width="65" /> <TextBlock Height="21" HorizontalAlignment="Left" Margin="370,34,0" Name="textBlock2" Text="ScrollableHeight:" VerticalAlignment="Top" Width="99" /> <TextBlock Height="30" HorizontalAlignment="Left" Margin="475,25,0" Name="ScrollableHeight" Text="" VerticalAlignment="Top" Width="65" /> <Button Name="start" Content="开始滚动" Margin="94,241,194" HorizontalAlignment="Left" Width="83"></Button> <Button Name="stop" Content="停止滚动" Margin="194,194" HorizontalAlignment="Left" Width="83" /> </Grid> </UserControl>@H_450_27@ 二 后台C#代码
using System; using System.Windows; using System.Windows.Controls; using System.Windows.Documents; using System.Windows.Ink; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Animation; using System.Windows.Shapes; namespace SilverlightApplication1 { public partial class MainPage : UserControl { public MainPage() { InitializeComponent(); start.Click += new RoutedEventHandler(startButton_Click); stop.Click += new RoutedEventHandler(stopButton_Click); txt.Text = "IP是现代IC设计行业中越来越受重视的核心技术。当今的芯片复杂程度越来 越高,甚至可包含整个系统的功能。如此复杂的SOC(System-on-a-Chip) 产品是由 许许多多的功能模块所组成,包括有cpu内核、DSP内核,以及各种各样的外部 总线接口内核,如PCI/X、PCI-Express、USB、I2C或Ethernet等接口内核。一个 SOC芯片通常只有一、两个cpu或DSP内核,但却可能包含众多的各类总线接口 内核。这些内核若全靠各个设计公司自己开发,不仅耗时耗人工,而且对产品的 核心功能没有任何增值。如果IC设计用户选用了优质的IP产品,不仅可以省去他们自己开发这些内核 所需花费的人力物力,而且省去了仿真和调试这些内核代码所耗费的大量宝贵时 间。调查发现,IC设计公司花费在仿真和调试RTL代码的时间占到其整个产品设计 周期的三分之二以上。若能减去这不必要的仿真和调试周期,不仅可使设计产品 早日进入市场,而且可以省去大量研发开销。"; } void startButton_Click(object sender,RoutedEventArgs E) { board.begin(); } private void board_Completed(object sender,EventArgs E) { //取得滚动条滚动的位置 double size = TestScrollViewer.VerticalOffset; VerticalOffset.Text = size.ToString(); ScrollableHeight.Text = TestScrollViewer.ScrollableHeight.ToString(); if (TestScrollViewer.VerticalOffset >= TestScrollViewer.ScrollableHeight) { TestScrollViewer.ScrollToVerticalOffset(0); } else { TestScrollViewer.ScrollToVerticalOffset((size+6)); } board.begin(); } private void stopButton_Click(object sender,RoutedEventArgs E) { board.Stop(); } } }@H_450_27@ 效果如下:
以上是大佬教程为你收集整理的silverlight应用(一):ScrollViewer 文字滚动全部内容,希望文章能够帮你解决silverlight应用(一):ScrollViewer 文字滚动所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。