我有一个所有者绘制的列表框控件.
问题是有时传递给我的DrawItem事件处理程序的DrawItemEventArgs参数的Index属性为“-1”.这是我不道德的修复:
private void lstBox_DrawItem(object sender,DrawItemEventArgs e) { if (e.Index >= 0) { handler implementation } }
我想知道通常导致负索引传递给处理程序的原因.
解决方法
这可能是当列表框为空时,但是收到焦点 – 例如如果清单在结束时清除.