问题标签 [krypton-toolkit]

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 回答
1519 浏览

visual-studio-2013 - 无法在 Visual Studio 2013 中加载 Krypton Toolkit 控件

在使用 Visual Studio 2013 转换使用 Visual Studio 2010 创建的 C# 项目并使用 Component Factory Krypton Toolkit v4.4.0 控件后,我无法将 Krypton Toolkit 控件添加到工具箱中。

在 Visual Studio 2013 中,当我尝试将控件从库中添加到工具箱时,C:\Program Files (x86)\Component Factory\Krypton Toolkit 4.4.0\Bin\ComponentFactory.Krypton.Toolkit.dll我收到一个错误,因为它找不到文件ComponentFactory.Krypton.Toolkit.tlb.

有没有办法在没有这个 .tlb 文件的情况下从库中导入 Windows 窗体控件?

0 投票
1 回答
481 浏览

.net - Windows ComboBox 拦截 WM_COMMAND 通知

更新以反映我的请求的更实用的描述。

ComboBox从功能上讲,我需要一个不直接从System.Windows.Forms.ComboBox类继承的只读文件。我需要将文本框部分设为只读,以便用户可以复制输入框中的文本但不能更改它。这不是使用DropDownvsDropDownList模式的情况。

使用本文和一些实验,我已经处理了文本框部分,但由于下面列出的技术原因,仍然需要防止下拉组件的更改。我仍然需要以下之一:

  1. 禁用 - 上的下拉按钮ComboBox以防止其打开
  2. 防止下拉菜单ComboBox在单击时打开
  3. 防止从下拉列表中选择项目更改控件中的选择(可能通过拦截和忽略单击项目通知消息)

我在我的应用程序中使用KryptonToolkit来获得视觉美感。对于KryptonComboBox控件,它有一个内部的扩展System.Windows.Forms.ComboBox类来拦截绘图调用。它公开了对该ComboBox对象的访问权限,因此我可以访问它的Handle.

我使用A Complete Read Only ComboBox代码作为基础来创建KryptonComboBox. 您必须使用来获取 Windows 控件的实际句柄,而不是KryptonComboBox.Handle在调用中使用。通过这样做,我可以在 ComboBox 的文本框部分正确设置只读模式。SendMessage()KryptonComboBox.ComboBox.Handle

但!由于扩展控件的基类 isKryptonComboBox和 not ComboBox,所以当WndProc()调用 时,它是针对KryptonComboBox. 因此,当控件处于只读模式时,我无法阻止控件对单击的下拉项执行操作(更改选择)。

如何拦截(并可能忽略)来自现有 ComboBox 控件的 WM_COMMAND 消息。具体来说,我希望在某些情况下忽略消息 273 链。有没有办法在功能上对“外部”ComboBox控件做同样的事情,我可以从继承的控件中做同样的事情?既然我有Handlefor the ComboBox,我可以使用类似的东西SetWindowsHookEx()来拦截消息吗?

0 投票
1 回答
356 浏览

c# - KryptonSeparator 调整大小问题

设想

我需要使用KryptonSeparator的帮助。

我想使用下图中的分隔符来调整左右控件的宽度:

在此处输入图像描述

问题

问题是当我尝试将分隔符向左移动时,它会产生非常令人不安的视觉效果,当我将分隔符向右移动时或多或少会发生相同的事情,但向左移动更明显(而且可怕):

在此处输入图像描述

我认为我没有正确使用事件参数,KryptonSeparator因为当我将分隔符向左移动时,我使用分隔符的宽度而不是事件数据进行计算(因为我不知道如何正确执行)。

问题

我应该在我的代码中做哪些修改来解决调整大小的问题?

代码

左右控件都分配了一个属性,如果达到MinimumSize,我试图停止调整大小。MinimumSize.Width

这是源代码,在 VB.Net 中:

这是 C# 中的源代码:

更新

我更新了上面的代码以简化阅读,我正在分享这个新视频,您可以在其中看到设计问题:

www.youtube.com/watch?v=-MhmyE3MZX0

0 投票
1 回答
710 浏览

c# - Krypton 上下文菜单在 .Net FW 4.0 下无法打开

设想

我正在使用一个非常著名的用户控件套件Krypton,它带有一个上下文菜单,一个KryptonContextMenu.

我正在使用最新版本,即4.4.0

我在 Windows 8.1 x64 下,使用 VisualStudio 2013 Ultimate 并使用 WinForms 技术。

问题

KryptonContextMenu如果我将我的项目定位到 FW 4.0 或更高版本,我无法显示。如果我的目标是 FW 3.5 或更小,它可以完美运行。

任何项目都会出现这种情况,即使官方KryptonContextMenuExamples自带氪项目样本。

它不会抛出任何异常,只是如果我尝试使用该KryptonContextMenu .Show()方法使用它的任何覆盖,它不会显示 FW 4.0 下的上下文菜单,只是不会发生任何事情。

问题

1)我是唯一有这个问题的人KryptonContextMenu?我只是在氪金页面/论坛中找不到这个问题的信息。

2)我可以尝试解决这个问题吗?

0 投票
1 回答
56 浏览

ui-automation - QA 录音工具无法识别桌面应用程序

VisualStudio我在 Microsoft UI 地图和统一功能测试器中开始了 QA 自动化。

在录制过程中,它不允许我录制桌面应用程序,也不识别桌面应用程序窗口中的任何内容。

该应用程序是在 VB.Net 中开发的,并使用了 Krypton 工具包。

有人可以解释这种行为吗?

0 投票
1 回答
4099 浏览

c# - Krypton Toolkit 控件未在表单中显示

Krypton 曾经是一种购买物品,但现在它显示在 Github 上,用于个人和商业项目。

https://github.com/ComponentFactory/Krypton

我正在使用 Visual Studio 2012,正如我引用的那样,组件似乎在这个版本中工作:

所有控件和组件的完整源代码都包含在 Visual Studio 项目和解决方案文件中,适用于 2005、2008 和 2010 版本的 Visual Studio。如果您使用的是较新版本的 Visual Studio,您仍然可以加载解决方案,它会编译得很好。

我已经下载了 github 文件,并且我有一堆 dll 文件。我已将这些 dll 文件添加到我的 Visual Studio 工具箱中。

发生的情况是项目已成功添加,但是当我将它们拖放到表单中时,它们不会出现。我已经尝试过按钮、DataGridViews 等,它们都不起作用。

在此处输入图像描述

该项目在我运行时没有显示错误..我错过了什么?

0 投票
1 回答
111 浏览

.net - 无法为 kryptontextbox 设置提示横幅

我尝试使用以下代码为 kryptontextbox 设置提示横幅

但是,文本没有设置。我该如何解决

0 投票
1 回答
662 浏览

c# - 更改 Krypton Button 的一次实例的字体

如何以编程方式放大 KryptonButton 的一个实例中使用的字体?

krytonButton.Font 可以改,但是好像没什么效果。

kryptonButton.StateCommon.GetContentShortTextFont(bar) 也返回一个 Font,但所有的访问器都是 getter,而且 Fonts 也是只读的。

0 投票
1 回答
1100 浏览

c# - 如何处理 System.Windows.Forms.dll 中发生的 System.AccessViolationException?

我正在用 C# 制作一个 Windows 应用程序...

为此,我将 sqlexpress 用于数据库,将 componentfactory 的氪工具用于 UI 组件...

我在 x86 平台上运行此应用程序...

应用程序工作正常..但有时当我关闭System.Windows.Forms.dll 中的 System.AccessViolationException表单时会出现处置...

我添加<legacyCorruptedStateExceptionsPolicy enabled="true" />到 app.config 下<runtime></runtime>...

我还添加[HandleProcessCorruptedStateExceptions]了主要功能并处置...

仍然没有解决这个错误......

我附上了屏幕截图。请看一下图像。
在此先感谢。

在此处输入图像描述

0 投票
1 回答
323 浏览

c# - kryptonDataGridView.CellBorderStyle 不起作用

如果我有一个普通的 DataGridView 并且我只想显示水平线,我应用以下代码:

使用 UI 模板 Krypton for WinFroms,它对我不起作用。我用:

线条仍然出现!

有没有人遇到过这个问题并解决了?