- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
全部,
我目前正在对 ListBox 进行一些自定义,以提高我的应用程序的清晰度。基本上,很容易找到为此目的的“操作方法”,从而导致下面我当前的结果。
我对显示很满意,但是......我遇到了鼠标滚轮的奇怪行为。我试图查找有关此问题的信息,并找到了这篇文章:
http://aviationxchange.net/wikis/winforms/net-color-listbox.aspx
指出鼠标滚轮问题不是唯一的(从链接简单复制/粘贴)
它提供了一些纠正这些问题的建议,但我对实现所有这些用于显示自定义列表的“解决方法”感到非常沮丧。我想念什么吗?是否有任何 winform 控件允许我以更干净/优雅的方式进行相同类型的自定义?我找不到更多信息:/
下面,添加了自定义绘图部分的相关部分,但我不确定显示问题是否真的基于重写方法的实现,更多的是控件本身。
public RecordListBox(): base()
{
mListBox = this;
mListBox.DrawItem += new DrawItemEventHandler(mListBox_DrawItem);
mListBox.MeasureItem += new MeasureItemEventHandler(mListBox_MeasureItem);
this.DrawMode = DrawMode.OwnerDrawFixed;
}
public void mListBox_DrawItem(object sender, DrawItemEventArgs e)
{
if (this.DesignMode) return;
e.DrawBackground();
e.DrawFocusRectangle();
// drawing actions
}
public void mListBox_MeasureItem(object sender, MeasureItemEventArgs e)
{
e.ItemHeight = 40;
}
问候,
最佳答案
根据给定的链接,您必须重写 void WndProc(ref Message m) 才能解决鼠标滚轮问题。如果您要基于现有窗口对象(甚至是 UserControl)滚动您自己的自定义控件,您将重写许多方法和属性以使控件确实如您所愿。给出的链接看起来是一个好的开始。实现这些函数以及 MeasureItem 的覆盖,然后查看最终结果。但是,如果您想创建一个自定义控件,则大多只是反复试验,并需要进行大量研究。
关于c# - 自定义列表框 : Elegant & effective implementation?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2292586/
我有一段代码需要快速运行,我正在优化运行数百万亿次的内部循环。 为了追求这个,我一直在这个内部循环中编写几个不同版本的代码,一些使用朴素的方法,一些使用 SSE 内在函数,等等。我做这一切的想法是当我
所以我正在开发一种编程语言,它可以编译为字节码以供 VM 执行,也可以编译为 C 作为中间语言以编译为 native 二进制文件。我选择 C 是因为它足够低级且可移植,通过重用现有编译器而不必编写
我偶尔注意到我的 Drive SDK 调用会定期失败并出现 500 错误,重试请求通常会立即修复错误。查看 Google 文档,建议使用指数退避技术,我编写了自己的实现,效果很好,但是在调试时我碰巧遇
我正在编写一个作为程序员应用程序基础的系统,它需要检测他们对某些数据的访问。我主要可以使用属性来做到这一点,如下所示: public class NiceClass { public int
我需要测试属性值是否以字母开头。如果不是,我会在它前面加上“ID_”,这样它就会是一个有效的 id 类型的属性值。 我目前有以下内容(测试值不以数字开头 - 我知道这些属性值只会以字母或数字开头),但
所以我有这行代码,我正在尝试找到一种方法以更优雅的方式编写它们: int randomHints1 = hintsRandom.nextInt(1200-100) + 100;
我正在使用 jOOQ,但我不太确定我是否按照我应该的方式使用它。我想知道我下面的代码是否可以写得更优雅。我所说的“优雅”是指基本上更改与列相关的任何内容都是相当烦人的。如果我添加、删除或更改列的顺序,
我正在研究 C++ 库。这个库将包含一堆简单的对象,它们彼此非常相似。 我已经为我的对象定义了一个简单的接口(interface): struct ICommand_v1 { virtual vo
我想知道您认为什么是定义常量数组变量的最佳和最简洁的方法,类似于 define 函数的工作方式。我在 Google 上看到很多人问这个问题,到目前为止,我想到的最简单的解决方案是在 define 语句
全部, 我目前正在对 ListBox 进行一些自定义,以提高我的应用程序的清晰度。基本上,很容易找到为此目的的“操作方法”,从而导致下面我当前的结果。 我对显示很满意,但是......我遇到了鼠标滚轮
背景 我可以访问我用于录音/分析的库的源代码,并且需要为我的应用程序修改它。 有一个主要 Activity (A 类),我在其中设置 View 和内容。该库有一个类(B 类),它使用 Audio Re
任何人都可以建议如何在 C++11/14 中优雅地迭代数字常量集(英语意思,而不是 C++ 意思),最好不要留下像这里这样的临时对象: set colors; colors.insert(0); co
编辑1:正如 Valentin Jacquemin 所建议的,我用一个 List> 来实现它。但是,当我现在更改值时,tomcat 会抛出错误:错误消息: SEVERE: /bvDesktop
这个问题在这里已经有了答案: 关闭 12 年前。
我想生成一个字符串比如sql命令: "INSERT INTO xxx VALUES(XXX, XXX, XXX)" 目前我使用 StringBuilder 和一些 String 常量(如“INS
这是我使用 pymongo 删除一堆记录的代码 ids = [] with MongoClient(MONGODB_HOST) as connection: db = connection[M
我使用优雅的配对方式将两个数字配对形成一个唯一的数字。但是,当我将两个相同的数字配对到 67108863 以上时,例如“pair(67108864,67108864)”,它会给我 4503599761
目前,我正在使用字符串连接构建网址。 String url = "http://localhost:8080/bo/" + docId; HttpEntity httpEntity = this.ha
我是 MEF 的新手,想在我目前正在开发的项目中使用它。 想法:我想写一个FileLoader这需要 T作为我正在尝试加载的类型的参数,并为我提供有关支持将哪些文件扩展名加载到该类型中的数据。类型加载
考虑以下(简单的)C++ 代码,将对象从自定义列表类型传输到 std::vector template void transfer(std::vector& target, const custom_
我是一名优秀的程序员,十分优秀!