diff --git a/dlls/comctl32/listbox.c b/dlls/comctl32/listbox.c index f9283f45282..1edb233f104 100644 --- a/dlls/comctl32/listbox.c +++ b/dlls/comctl32/listbox.c @@ -1830,6 +1830,8 @@ static LRESULT LISTBOX_SetCount( LB_DESCR *descr, UINT count ) if (!resize_storage(descr, count)) return LB_ERRSPACE; descr->nb_items = count; + if (descr->style & LBS_NOREDRAW) + descr->style |= LBS_DISPLAYCHANGED; if (count) { diff --git a/dlls/comctl32/tests/listbox.c b/dlls/comctl32/tests/listbox.c index 5e7f53289fd..bc3e837402f 100644 --- a/dlls/comctl32/tests/listbox.c +++ b/dlls/comctl32/tests/listbox.c @@ -569,7 +569,6 @@ static void test_ownerdraw(void) got_drawitem = 0; ret = RedrawWindow(hLB, NULL, 0, RDW_UPDATENOW); ok(ret, "RedrawWindow failed\n"); - todo_wine_if(testcase[i].message == LB_SETCOUNT) ok(got_drawitem == testcase[i].drawitem, "expected %u, got %u\n", testcase[i].drawitem, got_drawitem); DestroyWindow(hLB);