当前位置: 首页 > 编程日记 > 正文

WPF学习拾遗(二)TextBlock换行

原文:WPF学习拾遗(二)TextBlock换行

下午在帮组里的同事解决一个小问题,为了以后方便,把就把它收集一下吧。

新建一个TextBlock作为最基础的一个控件,他所携带的功能相对于其他的控件要来的比较少,

比较值得关注的属性出了布局用的以外和数据绑定意外,就只剩下的Text属性来。

TextBlock的默认内容属性是Text。

对于换行来说,需要关注的也就是Text和Inline2个属性。

常见的TextBlock换行方法

1)转义字符换行

在XAML的后台文件中加入代码

1 Me.TextBlock1.Text = "AAAAAAA " + vbCrLf + "BBBBBBBB"
1 this.TextBlock1.Text = "AAAAAAA\nBBBBBBBB";

在XAML上写时

        <TextBlock Text="AAAAAAA&#x000A;BBBBBB"   Height="198" HorizontalAlignment="Left" Margin="30,27,0,0" Name="TextBlock1" VerticalAlignment="Top" Width="436" >            </TextBlock>

这样就可以表示显示的表示换行了,

但是下面这种情况是无效的。

        <TextBlock  Height="198" HorizontalAlignment="Left" Margin="30,27,0,0" Name="TextBlock1" VerticalAlignment="Top" Width="436" > AAAAAAA&#x000A;BBBBBB</TextBlock>

在Text的内容里赋值时候,会按照XML去解析,所以对于XML的转义字符都会起到他们的作用,而上面这种情况,虽然这种写法是

是默认获取TextBlock的内容属性,但是在赋值过程中会经过Convert按照String来处理,字符串中解析到换行符时,默认转成了空格。

所以你看到的结果AAAAAAA和BBBBBB并没有被换行表示,只是中间隔了一个空格。

另外XML的转义字符

空格 (&#x0020;) 
Tab (&#x0009;) 
回车 (&#x000D;)

换行 (&#x000A;)

2)设置属性,自动换行

因为TextBlock有TextWrapping属性的支持,根据控件宽度自动设置换行,没有特殊要求的时候,这基本上能满足需求

        <TextBlock  Height="49" HorizontalAlignment="Left" Margin="30,27,0,0" Name="TextBlock1" VerticalAlignment="Top" Width="60" TextWrapping="Wrap"> AAAAAAABBBBBB</TextBlock>

3)使用InLines属性的LineBreak来换行

简单的来说就是,显示的XAML表示用

        <TextBlock  Height="49" HorizontalAlignment="Left" Margin="30,27,0,0" Name="TextBlock1" VerticalAlignment="Top" Width="60" TextWrapping="Wrap"> <Run>AAAAAA</Run><LineBreak/><Run>BBBBBB</Run></TextBlock>

后台代码添加

        TextBlock1.Inlines.Add(New Run("AAAAAA"))TextBlock1.Inlines.Add(New LineBreak())TextBlock1.Inlines.Add(New Run("BBBB"))

另外如果RUN里面有大量的文字表示,超过了TextBlock的Width时候,文字会被剪切掉,而不是自动换行,这点需要注意一下

相关文章:

Meta 开发 AI 语音助手,用于创建虚拟世界和实时翻译

编译 | 禾木木 出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09; Meta 在近日的「用人工智能构建元宇宙」的讨论会上&#xff0c;展示了最新的 AI 黑科技 「Builder Bot」 &#xff0c;并且在此次会议上 Meta 公布了关于构建元宇宙的人工智能计划&#xff0c;其中包括…

MySQL的基础

2019独角兽企业重金招聘Python工程师标准>>> 数据库和SQL 什么数据库 数据库是存储在一起的相关数据的集合&#xff0c;这些数据是结构化的&#xff0c;无有害的或不必要的冗余&#xff0c;并为多种应用服务。 什么是SQL 结构化查询语言(Structured Query Language)…

Python:Bug 官网不要了,全迁去 GitHub

近几年&#xff0c;GitHub 开发者数量逐年上升&#xff0c;仅过去一年 GitHub 的新增用户便有 1600 万人&#xff0c;总用户数更是达到了 7300 万——在开源浪潮席卷全球中&#xff0c;GitHub 无疑成为了许多开发者迈入开源的一个重要途径。 Python 开发团队或许正是看中了这一…

最新的全球编程语言,操作系统,web服务器等使用率分析报告

由www.w3techs.com 根据alexa排名前100万的网站数据给出的分析报告&#xff0c;并每天持续更新。1.服务器端编程语言排名 http://w3techs.com/technologies/overview/programming_language/all点评&#xff1a;PHP是最高的&#xff0c;说明目前php是主流&#xff0c;但是asp.ne…

javascript中有关this的使用

this在面向对象编程中非常重要&#xff0c;他的值取决于调用的模式。 在Javascript中有4种调用模式&#xff1a;方法调用模式、函数调用模式、构造器调用和apply调用。 1. 方法调用模式&#xff1a;当一个方法被调用时&#xff0c;this被绑定到该对象。方法可以使用this访问自己…

Vue中v-if和v-show的使用场景

1. 官方文档 https://cn.vuejs.org/v2/guide/conditional.html#v-if-vs-v-show 2. v-if 和 v-show 的区别 2.1 官方解释 v-if 是“真正”的条件渲染&#xff0c;因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。 v-if 也是惰性的&#xff1a;如果在初…

手机自带的显示基站命令

安卓手机自带快捷指令显示当前的网络信息&#xff0c;不过手机厂商不同&#xff0c;命令也不一样。每次要用时总想不起来命令&#xff0c;记下备用。(1) HTC 安卓手机在拨号键盘输入 *#*#4636#*#* , 选择 “手机信息” (2)三星安卓手机 *#*#4636#*#* , 选择 “手机信息” (3)摩…

LB负载均衡集群 - NAT

前提&#xff1a;客户机 &#xff1a; eth0 192.168.0.200 eth1 192.168.205.129dir主机&#xff1a; eth0 192.168.0.166 eth1 192.168.205.128rs1主机&#xff1a; eth0 192.168.0.207rs2主机&#xff1a; eth0 192.168.0.208rs1 和 rs2的网关是dir 192…

时序预测的三种方式:统计学模型、机器学习、循环神经网络

作者 | luanhz来源 | 小数志导读时序预测是一类经典的问题&#xff0c;在学术界和工业界都有着广泛的研究和应用。甚至说&#xff0c;世间万物加上时间维度后都可抽象为时间序列问题&#xff0c;例如股票价格、天气变化等等。关于时序预测问题的相关理论也极为广泛&#xff0c;…

Python 爬虫练手项目—酒店信息爬取

from bs4 import BeautifulSoup import requests import time import reurl http://search.qyer.com/hotel/89580_4.html urls [http://search.qyer.com/hotel/89580_{}.html.format(str(i)) for i in range(1,10)] # 最多157页 infos [] # print(urls)# 批量爬取数据 def g…

应用交换技术的负载均衡算法

原文出处是&#xff1a;http://hi.baidu.com/ruijievideo/blog/item/5959be1f3c1621ff1bd576d2.html 应用交换技术的负载均衡算法应用交换技术里主要包括四项关键的技术&#xff1a;◆截获和检查流量◆服务器监控健康检查◆负载均衡算法◆会话保持截获和检查流量保证只有合适的…

平民架构的春天——UCloud数据方舟实战记

LNMP是最亲民的网页服务架构&#xff0c;整合了优秀的开源软件&#xff0c;想必大家再熟悉不过了&#xff0c;随着云计算的落地&#xff1b;大众创业&#xff0c;万众创新的倡导&#xff0c;为了更好的服务和安全&#xff0c;LNMP也迁入了云平台&#xff0c;比如像UCloud这样优…

用 Python 制作可视化报表,这也太快了!

作者 | 小F来源 | 法纳斯特在数据展示中使用图表来分享自己的见解&#xff0c;是个非常常见的方法。这也是Tableau、Power BI这类商业智能仪表盘持续流行的原因之一&#xff0c;这些工具为数据提供了精美的图形解释。当然了&#xff0c;这些工具也有着不少缺点&#xff0c;比如…

Django 错误汇总

1、 解决&#xff1a;python manage.py migrate sessions 2、转载于:https://blog.51cto.com/jacksoner/2130665

几种负载均衡算法

几种负载均衡算法 本地流量管理技术主要有一下几种负载均衡算法&#xff1a; 静态负载均衡算法包括&#xff1a;轮询&#xff0c;比率&#xff0c;优先权 动态负载均衡算法包括: 最少连接数,最快响应速度&#xff0c;观察方法&#xff0c;预测法&#xff0c;动态性能分配&#…

cassandra命令

压力测试&#xff1a;cassandra-stress [command] -node [nodes] -mode thrift user[user] password[password] example: cassandra-stress write n10 -node 192.168.0.105 -mode thrift usercassandra passwordcassandra

《2022产业互联网安全十大趋势》发布,专家学者透析产业安全新变化

2月28日&#xff0c;在中国产业互联网发展联盟指导下&#xff0c;人民邮电报、中国信息安全、腾讯安全联合实验室、腾讯研究院联合推出《2022产业互联网安全十大趋势》。该报告由《中国信息安全》杂志出品人温哲、腾讯副总裁丁珂、腾讯研究院院长司晓等20余位行业顶级专家、学者…

slurm用户快速入门手册

1. 概述2. 架构3. 命令3.1 sacct3.2 sattach3.4 sbatch3.5 sbcast3.6 scancel3.7 scontrol3.8 sinfo3.9 smap3.10 squeue3.11 srun3.12 strigger3.13 sview1. 概述 Slurm 是一个开源、容错、高可伸缩的集群管理和大型小型 Linux 集群作业调度系统。slurm不需要对操作系统内核进…

什么是CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI?

原文地址&#xff1a;http://www.mike.org.cn/articles/what-is-cgi-fastcgi-php-fpm-spawn-fcgi/什么是CGICGI全称是“公共网关接口”(Common Gateway Interface)&#xff0c;HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具&#xff0c;其程序须运行在网络服务器上…

5个短小精悍的 Python 趣味脚本,太赞了,非常适合小白上手!

作者 | 菜鸟哥来源 | 菜鸟学Python今天特地为大家准备了几个简单的“开胃小菜”。希望大家能够通过这几个简单而实用的小案例&#xff0c;活跃一下自己的思维&#xff0c;为接下来的工作和学习做好准备。话不多说&#xff0c;我们接下来就开始介绍。1、图片尺寸缩小所需库&…

AjaxFileUpload文件上传组件(php+jQuery+ajax)

jQuery插件AjaxFileUpload可以实现ajax文件上传&#xff0c;下载地址&#xff1a;http://www.phpletter.com/contents/ajaxfileupload/ajaxfileupload.js 主要参数说明&#xff1a;1&#xff0c;url表示处理文件上传操作的文件路径&#xff0c;可以测试URL是否能在浏览器中直接…

Hadoop生态圈-Flume的组件之自定义拦截器(interceptor)

Hadoop生态圈-Flume的组件之自定义拦截器&#xff08;interceptor&#xff09; 作者&#xff1a;尹正杰 版权声明&#xff1a;原创作品&#xff0c;谢绝转载&#xff01;否则将追究法律责任。 本篇博客只是举例了一个自定义拦截器的方法&#xff0c;测试字节传输速度。 1>.自…

Pandas 重复数据处理大全

作者 | 东哥起飞来源 | Python数据科学本次来介绍重复值处理的常用方法。重复值处理主要涉及两个部分&#xff0c;一个是找出重复值&#xff0c;第二个是删除重复值&#xff0c;也就是根据自己设定的条件进行删除操作。定位重复值对于重复值&#xff0c;我们首先需要查看这些重…

DEDECMS教程:上/下一篇文章标题长度的截取方法

对dedecms了解的朋友们&#xff0c;想必对如何获取上一篇、下一篇文章的标签也是非常熟悉。dedecms获取上一篇、下一篇文章的标签分别为&#xff1a;{dede:prenext getpre/}、{dede:prenext getnext}。 在这个标签里&#xff0c;并没有设置上一篇、下一篇文章标题字数的功能&am…

以太网帧最小字节数以及以太网碰撞

说明&#xff1a;本文源自多个网页&#xff0c;原文链接已经不可寻 以太网是无连接的&#xff0c;不可靠的服务&#xff0c;采用尽力传输的机制。以太网CSMA/CD我就不多讲了&#xff0c;我相信大家都了解这个原理。以太网是不可靠的&#xff0c;这意味着它并不知道对方有没有收…

lodash 提取前N个元素 take

_.take(array, [n1])从数组的起始元素开始提取 N 个元素。 <!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><…

JavaScript 中的有限状态机

http://www.ibm.com/developerworks/cn/web/wa-finitemach/JavaScript 中的有限状态机Page navigation系列文章有限状态机很早就已用作设计和实现事件驱动的程序&#xff08;比如网络适配器和编译器&#xff09;内复杂行为的组织原则。现在&#xff0c;可编程的 Web 浏览器为新…

健身也内卷?这届网友用 Python 掌握了做标准俯卧撑的秘诀

自己在家锻炼时&#xff0c;我们很难知道自己的动作是否标准。本文作者用Python写了一个可以检测俯卧撑动作是否标准的程序&#xff0c;一起来看看他是怎么做的。 译者 | 章雨铭 出品 | CSDN 在新加坡军队中&#xff0c;有一种测试叫做IPPT&#xff08;个人身体素质测试&#x…

Linux下配置SNMP

SNMP&#xff08;Simple NetworkManagement Protocol &#xff09;&#xff1a;简单网络管理协议本案列为Linux环境搭建&#xff08;CentOS-6&#xff09;使用yum进行安装&#xff1a;yum install -y net-snmp安装完成后先查看网络配置&#xff1a;netstat -anupl确认161端口被…

重磅!MaxCompute助力阿里开源自研语音识别模型DFSMN,准确率高达96.04%

阿里开源语音识别模型DFSMN 在近期举行的云栖大会武汉峰会上&#xff0c;装有DFSMN语音识别模型的“AI收银员”在与真人店员的PK中&#xff0c;在嘈杂环境下准确识别了用户的语音点单&#xff0c;在短短49秒内点了34杯咖啡。此外&#xff0c;装备这一语音识别技术的自动售票机也…