读书人

什么行为触发DrawItem事件?解决思路

发布时间: 2012-01-20 18:53:53 作者: rapoo

什么行为触发DrawItem事件?
什么行为触发DrawItem事件?最好举个例子说明,怎么做就会执行该市建立的代码?还有下面这段代码执行了却看不到线,为什么?
Graphics g =this.CreateGraphics();
Pen p = new Pen(Color.Black);
p.DashStyle =System.Drawing.Drawing2D.DashStyle.Solid;
p.Width = 3;
g.DrawLine(p, 0, 0, 100, 100);

[解决办法]
在ComboBox加载下拉框的时候会触发
[解决办法]
你可以调用控件实例本身的Invalidate()方法就可以让DrawItem之类的方法执行。

你没有看到效果,可能是它绘制了,但是被后来的其它绘制给覆盖了。或者你不能使用this.CreateGraphics()方法,而应该尽量的使用Paint(或OnPaint)方法的参数e.Graphics。
[解决办法]
很多控件都有DrawItem事件,只要重绘该控件都会触发该事件.
但在属性中要设置this.listBox1.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed; //以listbox为例.

读书人网 >C#

热点推荐