我在一个窗口中有一个列表视图公共控件。我有一个机制,可以在同一个窗口内更新列表(它就像一个魅力)。但是,我得到了这个要求,我必须从外部实体更新视图,如对话框或其他窗口。这就是出现问题的地方。
当项目从窗口边界外部插入时,列表视图不会更新。我已经尝试在每个可能的List View NOTIFICATION消息中进行UpdateWindow()调用,但无济于事。我希望有人可以帮助我。
此外,当整个应用程序窗口最小化并退回时,列表视图 DOES 将使用新项目/行进行更新。怪异。
答案 0 :(得分:0)
哦,是的,感谢@Remy Lebeau在评论中给出正确的解决方案。这就是他给出的
/* window procedure of window where list view exists as a control */
case WM_NOTIFY:
switch(((LPNMHDR) lParam)->code) {
case LVN_INSERTITEM:
ListView_RedrawItems(hMyList, 0, lastIndex);
UpdateWindow(hMyList);
UpdateWindow(hwnd); /* the parent window */
...
希望这可以帮助其他人寻找解决方案。