【问题标题】:WPF Textbox "normal" text inputWPF 文本框“正常”文本输入
【发布时间】:2011-01-10 07:06:55
【问题描述】:

生日,

我不确定这是仅与我有关的问题,还是其他人也有此问题。尽管如此,我还是会试着描述一下这里发生了什么。

我有一些文本框、默认样式等。我设置了显式的 maxwidth 和 maxheight 以防止在文本超出文本框的默认宽度时调整大小。问题是文本换行到下一行,但我只想要单行。所以我将 maxlines 设置为 1 并将 textwrapping 设置为 NoWrap。没关系。

现在,当超出宽度时,克拉和键入的文本会在文本框的边缘下消失,我可以让克拉和新键入的文本重新显示的唯一方法是按向左和向右箭头。来自 MFC 并一直使用 HTML 文本框,我原以为默认行为是让文本框内容随着克拉滚动,或者我在这里遗漏了什么?

谢谢,

灰

【问题讨论】:

  • 能否请您发布您的确切代码,因为对我来说它总是按预期工作。
  • 要确保没有设置样式,可以显式设置为null:style="{x:null}"

标签: c# wpf .net-4.0 wpf-controls


【解决方案1】:

您所要求的实际上是默认行为。从一个空网格开始并在其上放置一个文本框。在框中输入一些文本,文本视图将随着插入符号滚动。

下面是我测试过的 XAML,也许你有干扰它的样式?

 <Grid>
    <TextBox MaxWidth="20" Height="20"></TextBox>
 </Grid>

【讨论】:

  • 是的,你是对的,有东西在干扰它。创建了一个新项目并按预期工作。废话,我不知道从哪里开始寻找这个问题哈哈。
  • 这是一个大型项目,太大,无法发布 XAML。我先做个项目的备份,先把周围的样式一一禁用,把麻烦的样式隔离出来:)然后再回帖。
  • 发现问题。你是对的,格雷格。有一个 ScrollViewer 样式没有被使用,但在我的资源字典中。一旦我删除它,所有文本框都可以正常工作。非常感谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-11-25
  • 1970-01-01
  • 1970-01-01
  • 2016-04-15
  • 1970-01-01
  • 1970-01-01
  • 2012-01-10
相关资源
最近更新 更多