- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在运行时,我根据需要向主窗口添加(和删除)多个控件,该主窗口在设计器中仅包含带有一些功能按钮的 ToolStrip。在某些情况下,我想在 toolStrip 旁边添加信息标签,但我无法使其可见,即。它隐藏在下面。标签的代码很简单
infoLabel = new Label();
infoLabel.AutoSize = true;
infoLabel.Location = new System.Drawing.Point(200, 10);
infoLabel.Size = new System.Drawing.Size(35, 13);
infoLabel.BackColor = System.Drawing.SystemColors.Control;
infoLabel.Font = new System.Drawing.Font("Arial", 13);
infoLabel.ForeColor = System.Drawing.Color.Black;
infoLabel.TabIndex = 1;
infoLabel.Text = "this is info";
infoLabel.BringToFront();
this.Controls.Add(infoLabel);
TabIndex
和 BringToFront
我添加作为绝望的行为,它没有帮助。顺便说一句,ToolStrip 的 TabIndex
是 2,它的 BackColor
我更改为透明。
但是,当我在设计器中的 ToolStrip 上放置标签时,它是可见的(即在顶部)。然后我分析了代码,但没有发现与我正在编写的内容有任何不同。我在这里缺少什么?
最佳答案
我建议在最后调用 infoLabel.BringToFront();
,至少之后 this.Controls.Add(infoLabel)
;您当前的代码已修改:
infoLabel = new Label();
...
infoLabel.Text = "this is info";
// First Add to this
this.Controls.Add(infoLabel);
// Only then we can make infoLabel be the topmost
// among all existing controls which are on this
infoLabel.BringToFront();
我们创建 infoLabel
,将其添加到 this
并最终使其位于 this
上的最上面。为了使代码更具可读性,我建议如下:
// Create a label on this
infoLabel = new Label() {
AutoSize = true,
Location = new System.Drawing.Point(200, 10),
Size = new System.Drawing.Size(35, 13),
BackColor = System.Drawing.SystemColors.Control,
Font = new System.Drawing.Font("Arial", 13),
ForeColor = System.Drawing.Color.Black,
TabIndex = 1,
Text = "this is info",
Parent = this // <- instead of this.Controls.Add(infoLabel);
};
// make infoLabel topmost among all controls on this
infoLabel.BringToFront();
关于c# - 标签在 ToolStrip 上方不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59393922/
我有一个带有两个工具条的工具条容器。我想强制其中一个显示在另一个之上。我尝试将一个 Dock 设置为顶部,另一个设置为底部,但它们仍然随机显示。我也尝试使用 TopToolStripPanel.Con
我正在将 .net 2.0 与 Visual Studio 2005 一起使用,并且我正在尝试将两个不同的工具条添加到表单顶部,以便它们并排显示。我希望它像 Word 2003 一样,您可以在其中将多
我有一个 .NET 2.0 WinForms 应用程序,主窗体上有一个 ToolStrip。有时,ToolStrip 图标不会响应第一次鼠标单击,因此我必须单击该图标两次。它只是一个带有几个图标和工具
我想在我的 C# winform 中添加一些复选框以及标准工具条控件。工具条提供的标准控件没有问题,但我的复选框有问题。在toolstrip中,第一个控件是combobox(toolstrip com
我找到了这篇文章 VS-2010_Location在 stackoverflow 上,关于创建工具条时使用的标准图标的位置,并在工具条中“插入标准项目”,如新建、打印、剪切、粘贴等。 但是对于 VS
我的这行代码似乎无法正确打印: toolStripStatusLabel1.Text = String.Format("完成({0} 个结果)", _count); 打印出来的是这样的: 如果没有应用
我重写了位于用户屏幕顶部的工具栏。它有效,但出于某种原因,尽管该应用程序仅包含一个带有 Fill-Docked ToolStrip 的表单,但我无法让它保持在我指定的大小。它应该是 Windows 标
我在 C# 应用程序中有一个 ToolStrip,我将背景颜色设置为透明。这揭示了基础窗体的颜色,但不幸的是 ToolStrip 边框仍然可见。 我已经实现了一个自定义渲染器并重写了 DrawBoar
我正在开发一个 Windows 窗体应用程序(C#、.NET 4.0、VS 2010),其中我有一个非常标准的 MainForm 和一个 ToolStrip(GripStyle:Hidden,Dock
在运行时,我根据需要向主窗口添加(和删除)多个控件,该主窗口在设计器中仅包含带有一些功能按钮的 ToolStrip。在某些情况下,我想在 toolStrip 旁边添加信息标签,但我无法使其可见,即。它
假设我有 FormChild 继承 FormParent。在父级中,顶部有一个工具提示。我想要的是在我的子窗体中添加额外的元素,但控件始终处于锁定状态,尽管我已将 modifiers 设置为 prot
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 9
我正在为一个程序构建一个 UI,但我不明白为什么我的进度条在点击转换按钮后不可见。 private void convertButton_Click(object sender, EventArgs
我正在为特定作业(例如 Font ToolStrip)设计一系列 ToolStrip 控件。我需要做的是阻止用户和开发人员在我的 ToolStrip 中添加或删除控件。 任何帮助将不胜感激丹尼 最佳答
在我的 Winforms 应用程序中,我有一个工具条,我将其 BackColor 属性设置为黑色。一切都很好,除了工具栏上的每个下拉按钮都将其下拉箭头绘制为黑色,从而使其不可见。我的问题是,如何更改此
如何在 C# 中以编程方式对 ToolStrip 上的项目重新排序。 谢谢。 最佳答案 我找到了解决这个问题的方法,方法是使用 Items 集合的 Insert() 方法并指定我想要项目所在的索引。
你好,我有一个带有“收藏夹”菜单的 ToolStripMenu,我想在运行时在我的 WinForms 应用程序中添加子项。我有一个 datagridview,我右键单击它以显示具有“添加到收藏夹”选项
这个问题在这里已经有了答案: ToolStrip sometimes not responding to a mouse click (5 个答案) MenuStrip can't get focu
在哪里可以找到 Microsoft ToolStrip 图标的图像,例如:新建、打开、保存、全部保存、打印、下一步、上一步、播放、撤消等? 最佳答案 如果由于某种原因您找不到图像存档,您可以从这里
我有一个使用表单设计器创建的菜单条。然后我想以编程方式在菜单条下添加一个工具条工具栏。原因是这个工具栏是我作为插件添加到主应用程序的一组工具。因此,当加载插件时,我创建了工具栏。 当我使用窗体设计器手
我是一名优秀的程序员,十分优秀!