Проверенные элементы списка не работают - PullRequest
1 голос
/ 19 декабря 2011

У меня есть этот код для рисования диаграммы в PictureBox:

    private void ChkLiboData_ItemCheck(object sender, ItemCheckEventArgs e)
    {
        Refresh();
        try
        {
            foreach (DataClass d in ChkLiboData.CheckedItems)
            {
                if (d.r == null && d.g == null && d.b == null)
                {
                    Random r = new Random();

                    d.r = r.Next(0, 255);
                    d.g = r.Next(0, 255);
                    d.b = r.Next(0, 255);

                    DrawDiagram(d.DataList, (int)d.r, (int)d.g, (int)d.b);
                }
                else
                {
                    DrawDiagram(d.DataList, (int)d.r, (int)d.g, (int)d.b);
                }
                Refresh();
            }
        }
        catch { }
    }

но в моде отладки, когда я проверяю предмет и смотрю на ChkLiboData.CheckedItems, я не вижу никаких предметов в ChkLiboData.CheckedItems. что мне делать ???

1 Ответ

4 голосов
/ 19 декабря 2011

Событие ItemCheck возникает, когда проверенный статус элемента собирается измениться .Это не изменилось уже.Позвольте мне показать это на примере.CheckedListBox содержит 3 элемента «A», «B» и «C».Ни один элемент не проверен.Теперь пользователь проверяет пункт «А».Событие ItemCheck происходит.Свойство CheckedItems не содержит элементов.В аргументах события e (типа ItemCheckEventArgs) вы можете найти индекс элемента, состояние которого изменяется, свойство CurrentValue, содержащее ранее проверенное состояние, и свойство NewValue, содержащее новое проверенное состояние.Если пользователь затем проверяет пункт «B», событие запускается снова.На этот раз свойство CheckedItems содержит один элемент "A".aso

Кстати: вы можете установить свойство NewValue в событии ItemCheck.Это дает вам возможность, например, предотвратить проверку элемента.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...