【问题标题】:Horizontal scrollbar not showing on my textbox我的文本框上没有显示水平滚动条
【发布时间】:2016-08-16 15:27:23
【问题描述】:

在 Winform C# 应用程序中,我在表单上显示一个文本框。 此文本框将显示一行,仅显示一行。 我想展示并成为 abe 使用水平滚动条。

我将属性“滚动条”设置为水平:滚动条不显示。 我将 WordWrap 添加到 false : ScrollBar 不显示。 我将 MultiLine 添加到 true (即使是一个线): ScrollBar 不显示。

我显示的线条比控件“更长”,所以我真的需要一个滚动条:(

这是定义:

        this.TxtBox_ApercuFichier.Font = new System.Drawing.Font("Courier New", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
        this.TxtBox_ApercuFichier.Location = new System.Drawing.Point(11, 30);
        this.TxtBox_ApercuFichier.Multiline = true;
        this.TxtBox_ApercuFichier.Name = "TxtBox_ApercuFichier";
        this.TxtBox_ApercuFichier.ScrollBars = System.Windows.Forms.ScrollBars.Horizontal;
        this.TxtBox_ApercuFichier.Size = new System.Drawing.Size(702, 21);
        this.TxtBox_ApercuFichier.TabIndex = 12;

即使 wordwrap 为 false,结果也是一样的。 (我的文本框在一个组框中)。

有什么想法吗?

非常感谢:)

问候,

【问题讨论】:

  • WordWrap 为 true 应该可以工作。高度应该大于 21 像素。
  • WordWrap 已经为真。我将 21 替换为 25,结果相同 :-( 可能是由于 groupbox?
  • 要明确:即使您当前的文本较长,滚动条也不会显示?另外:如果只想显示一行,为什么要设置multiline=true??
  • GroupBox 有多大?

标签: c# .net winforms scrollbar


【解决方案1】:

以下代码将设置 ScrollBar 不可见以及它所在的父面板。

HScrollBar hScroller = textBox.HScrollBar;
hScroller.Visible = false;  
hScroller.Parent.Visible=false;

【讨论】:

  • 没有 HScrollBar 属性
【解决方案2】:

您需要执行以下操作才能在 Windows 窗体文本框中显示水平滚动条:

this.TxtBox_ApercuFichier.Multiline = true;
this.TxtBox_ApercuFichier.WordWrap = false;
this.TxtBox_ApercuFichier.ScrollBars = System.Windows.Forms.ScrollBars.Horizontal;

然后您可以调整文本框的大小以显示为一行。您需要启用Multiline,否则文本框的高度将设置为文本高度(我似乎找不到一种简单的方法来覆盖它),因此您无法看到滚动条。

【讨论】:

  • 谢谢你!没关系:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-26
  • 1970-01-01
  • 2021-11-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多