wpf 滚动文字 跑马灯

摘要:
有时它也很有用,例如,当我的软件界面不能容纳全文时。通过巧妙的使用,我们可以在没有太多先进技术的情况下取得非常好的结果。边框内是一个文本块,其长度随显示的字体而变化。需要注意的是,HorizontalAlignment=“Left”,这样Margin属性的左值就会改变,TextBlock相对于边框的位置也会改变。原理也很简单。只需更改TextBlockmargin的左侧值,使其在一段时间内保持较小。可以使TextBlock相对于边框向左移动。所以,如果我不是外面的边界,而是画布?

有时候也会有用,比如我的软件界面 放不下全长的文字时。或者状态栏显示一些时间,地点,温度,湿度等等这些东西

代码链接  https://gitee.com/csszbb/wpfnet5

wpf 滚动文字 跑马灯第1张

这属于WPF 动画的最基本应用了。

动画这东西我觉得重在巧。用的巧妙,不需要多高深的技术,就能做出非常好的效果。

        <Border Loaded="bd_Loaded" Grid.Column="2" BorderBrush="Red" Padding="5" BorderThickness="1" x:Name="bd" ClipToBounds="True" Margin="0,50,0,0" Height="34" VerticalAlignment="Top" HorizontalAlignment="Center" Width="170" >
            <TextBlock x:Name="tb" HorizontalAlignment="Left"   VerticalAlignment="Top" Height="25"  FontSize="16">
            欢迎全国政协副主席、科技部部长万钢,部党组副书记、副部长王志刚
            </TextBlock>
        </Border>

如上,红色框是一个固定长度的border。border 里面是一个长度随着显示字体变化的TextBlock.  注意

HorizontalAlignment="Left" 这个很重要,这样 Margin 属性的 left 值变化,才会改变TextBlock 相对于 Border的位置。

原理也很简单,只要改变TextBlock  margin的 left值,让它一段时间内一直变小。就能让TextBlock 相对于Border 左移

那么,如果我外边不是一个Border ,而是一个Canvas 那? 那就不是改变Margin 了 ,应该要改变Canvas.Left了把  。举一反三很重要

免责声明:文章转载自《wpf 滚动文字 跑马灯》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇opencvconvertScaleAbs位深转化函数Postgresql在Windows下的解压安装下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

wpf 获取datagrid中模板中控件

//获取name为datagrid中第三列第一行模板的控件 FrameworkElement item = dataGrid.Columns[3].GetCellContent(dataGrid.Items[0]); DataGridTemplateColumn temp = dataGrid.Column...

wpf 制作播放视频的屏保程序、而且能分屏显示

     这个程序用到了WPF里  “visual_Brush”(主要是为了实现分屏显示) , “UserControl” ,这两个知识点;   在屏保状态下播放指定文件夹下的视频,而且能分屏显示;   把编译好的屏保程序(原本是.exe)改名为.SCR 放到C:WindosSystem32下    现在就可以设置为屏保了:譬如win7系统的 在桌面属性→...

WPF读写config配置文件

WPF读写config配置文件单。 1. 在你的工程中,添加app.config文件。文件的内容默认为: 1 <?xml version="1.0" encoding="utf-8" ?> 2 <configuration> 3 </configuration> 2.如果你想给程序配置一些参数,就在<c...

CSS3---渲染属性

1.计数器 CSS3计数器(CSS Counters)可以允许我们使用css对页面中的任意元素进行计数,实现类似于有序列表的功能。与有序列表相比,它的突出特性在于可以对任意元素计数,同时实现个性化计数。 1>语法counter-reset: [ <identifier> <integer>? ]+ | none | inhe...

css3画图那些事(三角形、圆形、梯形等)

闲来无事,写写图形。当时巩固一下css3吧.。前端小白,写的不好还请前辈多指教。 三角形 { width: 0; height: 0; border-bottom: 140px solid red ; border-right: 70px solid transparent; border-left: 70px...

wpf窗口禁止最大化但允许调整大小

wpf中窗口禁止最大化可以通过属性ResizeMode来设置,但是ResizeMode有一个问题就是如果ResizeMode设置为NoResize的话,是可以禁止最大化的,但是这样同时也就不能拖动调整大小了,通过如下方法可以达到这个效果,通过win32 API来设置: 需要用到的API函数: [DllImport("user32.dll", EntryPo...