首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >RichEditBox文本包装

RichEditBox文本包装
EN

Stack Overflow用户
提问于 2016-07-24 03:07:59
回答 1查看 358关注 0票数 1

我试图获得一个RichEditBox来接管整个应用程序窗口的宽度,并响应窗口的大小调整,到目前为止,我所拥有的代码如下:

代码语言:javascript
复制
<RichEditBox HorizontalAlignment="Stretch"
             TextWrapping="WrapWholeWords"
             Height="250"
             Name="Intro"/>

我从上面的代码中得到的是:

有什么办法能让这件事起作用吗?为什么我告诉文字包装,但它没有跟随?

更新

我也试过这个:

代码语言:javascript
复制
<RichEditBox HorizontalAlignment="Stretch"
                         Height="250"
                         Name="Intro"/>

但结果是:

我遇到的问题是,HorizontalAlignment="Stretch"似乎什么也不做。我唯一能够设置一个合适宽度的方法是对其进行硬编码,例如:Width="600"。但是如果我这样做,我的UI将不能正确地响应调整大小。我也尝试过HorizontalContentAlingment="Stretch",但是结果完全一样。

如何让我的RichEditBox同时占用所有可用的WidthWrap

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-24 10:18:46

如果您查看RichEditBox.TextWrapping的文档,您会发现WrapWholeWords是无效的。你必须用

代码语言:javascript
复制
<RichEditBox TextWrapping="Wrap"/>
-or-
<RichEditBox TextWrapping="NoWrap"/>

因为Wrap是默认值,所以可以删除该属性。

代码语言:javascript
复制
<RichEditBox HorizontalAlignment="Stretch"
             Height="250"
             Name="Intro"/>

编辑:回答更新的问题:

控件只接受其父控件的宽度。一些容器控件(例如Grid)会自动获取可用的全部宽度,而其他容器控件(例如StackPanel)只会获取所需大小的子容器。结合使用HorizontalAlignment="Stretch"StackPanel作为父控件,将只使用MinWidth属性,而不使用屏幕上可用的全部宽度。有时您无法直接看到这个问题,例如当您的控件位于ListView的项目模板中时。使用Visual中的活视觉树查找父容器并定位问题。

因此,简而言之:确保您的RichEditBox位于网格(或类似的控件)中,而不是StackPanel中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38548361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档