외부 코드에서 ctrl-C ctrl-V로 가져온 경우에
OwnerDraw가 true가 아닌 지 확인해 보자. false로 바꾸면 잘 나올 것이다.
OwnerDraw==true인 경우 DrawColumnHeader, DrawItem, DrawSubItem events에 대한 handers 구현해야 한다.
Item/SubItem은 대개 스스로 구현하겠지만 header에 대해서는 default로 충분할 텐데,
private void listView1_DrawColumnHeader(object sender, DrawListViewColumnHeaderEventArgs e)
{
e.DrawDefault = true;
}
이전 프로젝트에서 OwnerDraw를 구현해 뒀다가 오랜만에 꺼내서 쓰려고 할 때 이런 일이 생길 수 있다.
그 밖에 흔히들 하는 실수는
* View property가 Details로 맞춰져 있지 않은 경우
* listView1.Items.Clear() 하지 않고 listView1.Clear() 해 버리는 경우
등이 있다.