Vista에는 항목이 없을 때 목록보기 컨트롤에 텍스트를 표시하는 새로운 API가 도입되었습니다. MSDN 라이브러리 상태로, 나는 LVN_GETEMPTYMARKUP
알림을 처리해야합니다. 상속 ListView
제어ListView 빈 마크 업 텍스트
는 WndProc
방법 오버라이드 (이 예외가 발생하지 않지만)
protected override void WndProc(ref Message m) {
try {
if(m.Msg == 78 /* WM_NOTIFY */) {
var nmhdr = (NMHDR)Marshal.PtrToStructure(m.LParam, typeof(NMHDR));
if(nmhdr.code == -187 /* LVN_GETEMPTYMARKUP */) {
var nmlvemptymarkup =
(NMLVEMPTYMARKUP)Marshal.PtrToStructure(m.LParam, typeof(NMLVEMPTYMARKUP));
nmlvemptymarkup.szMarkup = "The ListView is empty.";
m.Result = (IntPtr)1;
}
}
} finally {
base.WndProc(ref m);
}
}
그러나, 작동하지 않는다. 실제로 나는 결코 nmhdr.code
을 -187과 같게하지 않습니다. 어떤 아이디어?
MSDN에서 페이지에 대한 링크를 게시 할 수 있습니까? – configurator
http://msdn.microsoft.com/en-us/magazine/cc163384.aspx –