TextBlock的Text内容后台添加换行

来源:互联网 发布:淘宝设置工作日收货 编辑:程序博客网 时间:2024/06/09 02:06

SilverLight中TextBlock换行

silverlight支持在TextBox中用AcceptsReturn="True"来换行,但是TextBlock不支持此属性,因此需要在显示在TextBlock上的文字做些改变。

1.用"\n"换行

  txbView.Text = "Hello World\nMy Name is Jerry\nHaha";

效果

2.用silverlight自带的类

            txbView.Inlines.Add(new LineBreak());            txbView.Inlines.Add(new Run() { Text = "I'm" });            txbView.Inlines.Add(new LineBreak());            txbView.Inlines.Add(new Run() { Text="Jerry"});

效果

2、TextBolck如何实现携带滚动条操作

其实,在TextBlock里,是没有滚动条相关属性的,就是说我们不能直接给TextBlock添加一个滚动条,但是我们可以把TextBlock放进ScrollViewer里,来实现滚动条的效果.

12345
            <ScrollViewer Height="131" HorizontalAlignment="Left" Margin="103,122,0,0" Name="scrollViewer1" VerticalAlignment="Top" Width="252" VerticalScrollBarVisibility="Visible">                <ScrollViewer.Content>                    <TextBlock Height="466" Name="textBlock1" Text="TextBlock" Width="221" TextWrapping="Wrap" />                </ScrollViewer.Content>             </ScrollViewer>


VerticalScrollBarVisibility属性设置垂直滚动条,Visible即显示,还有Disable禁用 Auto 自动 Hidden 隐藏几个值,水平滚动条是HorizontalScrollBarVisibility.可以看到,在ScrollViewer里的TextBlock高度要比ScrollViewer高很多,这是因为这个滚动条是ScrollViewer的,并不是TextBlock的,TextBlock还是要有足够的高度显示所有的内容(其实设设置成Auto就可以了).其他没有滚动条属性的控件也可以通过这个方法实现滚动条效果.