#c# #c #winapi
#c# #c #winapi
Вопрос:
Я создаю поле со списком с флажками. Все работает нормально, но я столкнулся с проблемой.
Когда я открываю список со списком и устанавливаю флажок, любое поле списка значений исчезает. Итак, если мне нужно проверить пять значений в поле со списком. Я должен щелкнуть 10 раз.
Я хочу открыть поле со списком и проверить все 5 элементов, а затем щелкнуть вне поля со списком и списка
исчезнуть!
Я попробовал это, прочитав сообщения Windows. Я думаю, что я услышу сообщение for window и когда
пришло сообщение о том, что список полей со списком исчезает, я пропускаю это, просто вызвав return.
Вот мой код:
protected override void WndProc(ref Message message)
{
const int CB_SHOWDROPDOWN=0x014F;
if (message.Msg == CB_SHOWDROPDOWN )
{
if(message.WParam == (IntPtr)0)
{
SendMessage(Program.poForm.cmbShop.Handle, CB_SHOWDROPDOWN, (IntPtr)1,
IntPtr.Zero);
}
return;
}
base.WndProc(ref message);
}
Это не работает! Есть ли какие-либо обходные пути для решения этой проблемы?
Ответ №1:
Вы смотрели на этот code project пример расширения полей со списком с помощью флажков.
Ответ №2:
Абсолютно ли необходимо использовать поле со списком? Потому что в .NET есть элемент управления checkedlistbos.