47 UINT iItemStart, iItemEnd, iItem;
51 if (itemStart > itemEnd)
55 iItemStart = itemStart;
62 while (iItemStart <= iItemEnd)
70 iItem = (iItemStart + iItemEnd) / 2;
72 itemData = ListCtl->GetData(ListCtl, iItem);
76 if (
Value == itemData)
86 if (BisectRightOrLeft)
88 iItemStart = iItem + 1;
92 if (iItem <= itemStart)
break;
96 else if (
Value < itemData)
98 if (iItem <= itemStart)
break;
100 iItemEnd = iItem - 1;
105 iItemStart = iItem + 1;
119 IN BOOL BisectRightOrLeft)
121 INT iItemEnd = ListCtl->GetCount(ListCtl);
122 if (iItemEnd ==
CB_ERR || iItemEnd <= 0)
126 0, (
UINT)(iItemEnd - 1),
UINT BisectListSortedByValue(IN PLIST_CTL ListCtl, IN ULONG_PTR Value, OUT PUINT pValueItem OPTIONAL, IN BOOL BisectRightOrLeft)
UINT BisectListSortedByValueEx(IN PLIST_CTL ListCtl, IN ULONG_PTR Value, IN UINT itemStart, IN UINT itemEnd, OUT PUINT pValueItem OPTIONAL, IN BOOL BisectRightOrLeft)
PULONG MinorVersion OPTIONAL
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value