问题标签 [toolstripbutton]

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 投票
1 回答
360 浏览

c# - 真奇怪 ToolStripButton 事件问题

我正在制作一个基于 ToolStripButton 控件的 CustomControl,我想知道鼠标何时悬停在按钮上以不同方式绘制它。这是我的代码的快速视图:

我的问题是我在调试面板中清楚地看到 Mouse IN 和 Mouse OUT 是正确的,所以应该正确设置变量,但是在 OnPaint 事件中,我从不输入 m_IsHover 条件 ...

我真的不明白问题是什么,看起来很容易......

0 投票
1 回答
1654 浏览

c# - 带有每个状态图像的工具条按钮

我的应用程序中有一个带有一些 ToolStripButtons 的 ToolSrip。我希望不仅添加基本图像,而且添加悬停状态图像和单击状态图像,如果可能,当鼠标悬停按钮时删除橙色背景......可能吗?提前致谢!

0 投票
2 回答
505 浏览

c# - 工具条按钮移除照明

我的工具条中有一个工具条按钮,我希望在鼠标悬停时移除橙色灯光,因为我动态更改按钮的图片..

我怎样才能做到这一点?

0 投票
3 回答
2783 浏览

c# - 为什么在两次单击 ToolStrip 按钮时会引发 NullReferenceException - openFileDialog.showDialog()?

我创建了一个干净的 WindowsFormsApplication 解决方案,ToolStrip在主窗体中添加了一个,并在其上放置了一个按钮。我还添加了一个OpenFileDialog,因此Click事件ToolStripButton如下所示:

我没有更改任何其他属性或事件。

好笑的是当我双击的时候ToolStripButton(第二次点击一定很快,在对话框打开之前),然后取消两个对话框(或者选择一个文件,没关系)然后在客户区点击在主窗体中,NullReferenceException应用程序崩溃(帖子末尾附有错误详细信息)。请注意,该Click事件已实施,DoubleClick而未实施。

更奇怪的OpenFileDialog是,当替换为任何用户实现的表单时,ToolStripButton 阻止被点击两次

我在最新更新的Windows 7 Professional(来自 MSDNAA)上使用 VS2008 和 .NET3.5。我没有更改 VS 中的许多选项(仅字体大小、工作区文件夹和行号)。

有谁知道如何解决这个问题?它在我的机器上是 100% 可复制的,在其他机器上也可以吗?

我能想到的一种解决方案是在调用之前禁用按钮OpenFileDialog.ShowDialog(),然后重新启用按钮(但这并不好)。还有其他想法吗?

现在承诺的错误详细信息:

System.NullReferenceException 未处理
Message="对象引用未设置为对象的实例。"
Source="System.Windows.Forms"
StackTrace:在 System.Windows.Forms.UnsafeNativeMethods.PeekMessage 的 System.Windows.Forms.NativeWindow.WindowClass.Callback(IntPtr hWnd, Int32 msg
, IntPtr wparam, IntPtr lparam)
HandleRef hwnd, Int32 msgMin, Int32 msgMax, Int32 remove)
在 System.Windows.Forms.Application.ComponentManager.System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
在 System.Windows.Forms .Application.ThreadContext.RunMessageLoopInner(Int32 原因,
在 System.Windows.Forms.Application.ThreadContext.RunMessageLoop(Int32 reason, ApplicationContext context)
在 System.Windows.Forms.Application.Run(Form mainForm)
在 WindowsFormsApplication1.Program.Main() w C:\Users\Marchewek\Desktop \Workspaces\VisualStudio\WindowsFormsApplication1\Program.cs:第 20 行
System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity, String[] args)
在 Microsoft.VisualStudio
System.Threading.ThreadHelper.ThreadStart_Context(对象状态)处的.HostingProcess.HostProc.RunUsersAssembly( )
在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
在 System.Threading.ThreadHelper.ThreadStart()
InnerException:

0 投票
3 回答
5657 浏览

c# - C# 通知在工具条上的图像被选中后如何更改它

我希望在选择工具条后更改工具条上按钮的图像。图像属性是 system.drawing.bitmap 并保存到 Properties\Resources.resx 文件中。预先感谢

对逻辑的解释也很好!

0 投票
1 回答
689 浏览

.net - .NET 单个 ContextMenuItem 中的多个 ToolStripButtons

我正在尝试创建一个 ContextMenu,其中菜单中的某些项目包含多个项目。您可以将其视为尝试组合 ToolStrip 和 ContextMenuItem。我试过使用 ToolStripControlHost,但这会产生焦点问题。它基本上要求您单击 ToolStrip 中的所有内容两次..

关于如何实现这一目标的任何想法?

0 投票
2 回答
3235 浏览

c# - 无法在 C# 工具条控件中创建多行图标标题

我一直在尝试并尝试让标准 C# 工具条控件将按钮文本格式化为多行,到目前为止,我不得不承认失败。

我想要实现的是图片下的文本,以及包含固定图标大小的文本,而不是扩展图标大小以容纳文本,我不确定我是否可以更容易地解释它 - 现在,该程序如下所示:

而我实际上希望它这样显示:

我有点难以解释它比这更好,图标上没有多行属性,并且他们不接受标准的 \n 转义来强制换行。

我有一个可怕的想法,我需要创建一个自定义工具条按钮类才能做到这一点,但我完全不知道从哪里开始,所以非常感谢任何帮助!

在此先感谢您的帮助:)

0 投票
1 回答
2890 浏览

.net - 如何获取 ToolStripButton 的坐标?

我怎样才能得到坐标ToolStripButton

0 投票
1 回答
10262 浏览

wpf - ToolStripButton 是否有等效的 WPF?

我正在学习 WPF 并一直在尝试创建一个工具条。是否有直接等效于 WinForms ToolStripButton 或者只是添加一个普通按钮并格式化它的正确使用方式?

我发现微软有一个页面列出了 WinForm 控件及其 WPF 等效项但没有提到工具条按钮。

0 投票
2 回答
2361 浏览

c# - 奇怪的 ToolStripButton 单击以打开 OpenFileDialog 行为

我发现了一个奇怪的ToolStripButton双击问题。这些步骤将重现该问题:

  1. 创建一个 Windows 窗体应用程序。
  2. ToolStrip在主窗体上添加一个。
  3. 在. ToolStripButton_ToolStrip
  4. OpenFileDialog在主窗体上添加一个。
  5. 双击属性工具箱上的ToolStripButton'Click事件。
  6. 在方法中添加这个toolStripButton1_Click

    /li>
  7. 开始调试。
  8. 快速双击ToolStripButton.

问题来了。首先,弹出一个打开文件对话框,我关闭它,然后弹出另一个对话框。这不应该发生。我再次关闭它,然后主窗体可能有一些重绘问题。最后,我关闭了主窗体,但程序仍在运行。

请自己尝试一下,如果所有这些都发生了,请告诉我。

为什么会发生这些?我应该怎么做才能解决它?

您可以使用它来重现问题: