问题标签 [statusstrip]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
97 浏览

c# - Visual C# - 如何将状态条分层放在列表视图后面?

当我调整窗口大小时,位于表单底部的 StatusStrip 位于 ListView 的顶部。如何将 StatusStrip 设置在列表视图后面?

0 投票
0 回答
1092 浏览

c# - C# - 如何使 StatusStrip 调整无边框表单的大小

我正在尝试使用 StatusStrip 调整无边框表单的大小(出于多种原因,我正在使用工具条)。我已经成功移动了一个带有 MenuStrip 的表单,但从未调整大小,所以我对发送消息和 EventHandling 有一点了解。但是,单击时 StatusStrip 不会移动。以下是我到目前为止所拥有的。

自定义 StatusStrip 类:

设计器允许我拖放这个元素,因为它可以将它识别为一个控件,就像我想要的那样......

表格类:

我什至通过以下方式手动添加StatusStrip_MouseMoveStatusStrip_MouseDown到 MyForm.Designer.cs EventHandling:

但是 StatusStrip 仍然什么都不做。我错过了什么吗?

0 投票
1 回答
2794 浏览

c# - 如何从传递表单上所有控件的方法更新 ToolStripStatusLabel 文本

我有一种方法可以重置表单上的一些控件。ToolStripStatusLabel除了命名的“tsStatusLabelInfo”之外,我能够使该方法正常工作。此控件不会传递给该resetForm()方法。

我相信它是 StatusStrip 控件的一部分,但我还没有弄清楚如何访问ToolStripStatusLabel控件来更新文本。

0 投票
0 回答
193 浏览

visual-studio-2010 - 第二个 ToolStripStatusLabel 不可见

我有一个在 VS 2010 中开发的小应用程序,底部有一个 StatusStrip。我想在这个 StatusStrip 中有两个 ToolStripStatusLabels,一个总是在最左边,一个总是在最右边。

我添加了两个 ToolStripStatusLabels 并将第一个的 Spring 属性设置为 True,以便将第二个推到右侧。这适用于我的 IDE 以及当我在 Win7 计算机上运行应用程序时。但是,当我将相同的应用程序放在另一台 Win7 机器上时,第二个 ToolStripStatusLabel 始终是不可见的。我将两个标签的背景颜色更改为不同的颜色,我可以在我的机器上看到它们。在问题机器上,第二个完全不可见(没有背景颜色,只有控制颜色,没有文字)。

我已经在 StatusStrip 的 LayoutStyle 属性中尝试了各种值。如果它设置为“Flow”,第二个标签确实会出现,但第一个标签现在一直在左边,第二个标签就在它旁边。再一次,我希望第二个一直在右边。

显然,我没有正确的设置组合来执行此操作,但我感到沮丧。我将不胜感激任何人可能有的任何建议。谢谢!

0 投票
1 回答
1089 浏览

winforms - 尝试保存包含 StatusStrip 的表单时 Projectitem 不可用

我在我的空表单中添加了一个空状态条,当我尝试保存此错误时会弹出一次:

抛出的错误

在下一次尝试中,我可以保存直到我更改StatusStrip. 当我启动应用程序或重新打开设计器时,它将显示我的StatusStrip,但我在StatusStrip. 但是,生成的设计器代码仍然包含按钮的代码。

有没有人遇到过这个错误,或者有没有办法获得更多信息来解决它?

0 投票
2 回答
782 浏览

c# - 如何修复带边框 ToolStripStatusLabel 中的 Backgroundcolor 渗色

我有一个问题,ToolStripStatusLabelBorderSides设置为All并且我设置了与拥有的背景颜色不同的StatusStrip背景颜色时:ToolStripStatusLabels 背景颜色在边界外流血 - 这看起来很丑陋。我试图将BorderStyle属性设置为 Flat 以外的其他设置,但没有成功。

在下面添加的屏幕截图中,您会看到问题 - 蓝绿色的示例是BorderStyle = Adjust在矩形外绘制边框。但不幸的是,边界完全消失了。

不同的边框样式无济于事

我想要得到的是完全没有流血,就像这个手绘的例子一样。

在此处输入图像描述

这可以通过设置或继承或覆盖的特定方法来完成ToolStripStatusLabel吗?我对编程解决方案持开放态度,但我不知道从哪里开始,所以欢迎任何提示。


通过结合以下 x4rf41TaW的答案实施的解决方案

由于我使用了多个答案,这使我走上了正确的道路,因此我为问题添加了最终解决方案。

我扩展了ToolStripStatusLabel类并覆盖了OnPaint方法。这使我有可能利用类属性并绘制它,因为它会正常绘制自身但不会流血。

0 投票
1 回答
4611 浏览

c# - 如何获取 WinForm 上所有控件的列表,即使是 SplitContainers 或 Panels 中的控件

我的 WinForm 上有几个容器,如 Panel、SpliContainer、StatusStrip... 每个容器都包含基本元素,如按钮或文本框。我需要遍历所有表单控件(甚至是 Panels、SplitContainers、StatusStrip 中的控件)以找到一些控件。我尝试使用递归函数

但我没有得到容器中的控件!?

更新:

我有一个带有 SplitContainer、Panel 和 StatuStrip 的表单。在这些控件中的每一个中,我都有几个子控件,例如StatuStrip1 中的toolStripStatusLabel1。问题是当我尝试通过函数 ListAllControls 在StatuStrip 中找到例如控制工具StripStatusLabel1 时,我找不到它!?我不知道有任何其他方法可以从表单中获取所有控件。完整代码在这里:

样本:

对于这个示例,我得到了没有找到:(但如果我使用 StatusStrip1,我会得到“我找到了控件 StatusStrip1!” 我希望现在的问题比以前更清楚。

0 投票
1 回答
1142 浏览

vb.net - TableLayoutPanel 和 StatusTrip 工具栏重叠

我有一个 winforms vb.net 应用程序。在这个 winform 中,我放置了两个组件:

  • 表格布局面板
  • 状态条工具栏

我试图将 StatusStrip 工具栏放在 winforms 和 TableLayoutPanel 的底部以适应屏幕的所有其余部分,因此我为这两个组件设置了以下属性:

  • TableLayoutPanel:停靠:填充
  • StatusStrip 工具栏:Dock:底部

问题是TableLayoutPanel和StatusStrip工具栏重叠,即StatusStrip工具栏出现在winforms底部的TableLayoutPanel之上。

我试图将 TableLayoutPanel 放在一个面板中,并将 StatusStrip 工具栏放在另一个面板中,然后设置面板的停靠属性,包含要填充的 tablelayoutpanel 和包含 StatusStrip 工具栏的那个,但它不起作用。

0 投票
1 回答
61 浏览

vb.net - StatusStrip 正在截断需要显示的错误消息。怎么变长?

我试图为我的第一个 VB 课程制作这个电话验证程序。我需要做到这一点:http: //i.imgur.com/wwQewTu.png

但不幸的是,这种情况发生并且消息被截断。有没有办法来解决这个问题?http://i.imgur.com/RWCZajL.png

0 投票
1 回答
1352 浏览

c# - 如何从表单控件向 statusStrip 提供值?

这是我的控件的上下文:

因此,MyGenioView正在拦截MouseMove事件处理程序。已有的代码用于橡皮筋矩形。所以我有:

我无法理解的是我想statusStrip1.statusLabelMyGenioView MouseMove处理程序中设置值。我不知道该怎么做。

我要使用的代码是:

但是将它提供给主要表单statusStrip对象的正确方法是什么?

谢谢你的帮助。

更新:

知道如何设置 statusStrip 标签对象的文本。那不是我的问题。我的问题与我的鼠标处理程序事件的上下文以及它与表单的关系有关。请参阅问题开头所述的控件上下文。到目前为止的评论还没有考虑到这一点。

这是我创建对象(接收鼠标处理程序)的表单中的当前位置:MyGenioView