這是什麼原因?在列表視圖上繪製會禁用在列表視圖項上重繪
我重寫OnPaintBackground並繪製一個字符串。它不會顯示,直到我在構造函數中調用它:
this.SetStyle (ControlStyles.UserPaint, true);
但後來我沒有看到列表視圖中的項目。
爲什麼以及如何解決這個問題?
編輯:代碼
protected override void OnPaintBackground (PaintEventArgs pevent)
{
base.OnPaintBackground (pevent);
// Create string to draw.
String drawString = "76";
// Create font and brush.
Font drawFont = new Font ("Arial", 36);
SolidBrush drawBrush = new SolidBrush (Color.Blue);
// Create point for upper-left corner of drawing.
PointF drawPoint = new PointF (150.0F, 150.0F);
// Draw string to screen.
pevent.Graphics.DrawString (drawString, drawFont, drawBrush, drawPoint);
//pevent.Graphics.FillRectangle (drawBrush, this.ClientRectangle);
}`enter code here`
你打電話base.OnPaintBackground()?你可以發佈你的覆蓋代碼嗎? –
以下屬性和樣式的值是什麼? - ControlStyles.DoubleBuffer - ControlStyles.AllPaintingInWmPaint - ListView.OwnerDraw –
@Chris,添加了代碼。 –