Неверные значения Drawitemeventargs в ondrawitem, когда в дизайнереC#

Место общения программистов C#
Ответить
Anonymous
 Неверные значения Drawitemeventargs в ondrawitem, когда в дизайнере

Сообщение Anonymous »

У меня есть странная проблема. Я создал класс, который наследует от Listbox , и переопределяет ondrawitem () .

Код: Выделить всё

protected override void OnDrawItem(DrawItemEventArgs e)
{
base.OnDrawItem(e);

// If no list item, abort!
if (e.Index < 0)
return;

// If not expected item type, abort!
if (ListBox[e.Index] is not Item item)
return;

// Regular drawing code using item

}
< /code>
Код выше работает, когда я запускаю свое приложение. Но когда я помещаю элемент управления в форму в дизайнере, я получаю ошибку. '0'. (Параметр 'index') Фактическое значение было 0. < /p>
< /blockquote>
После поцарапания головы на этом я определял, что иногда в дизайнере, оба e. Index 
и items.count может иметь значение 0. Это никогда не происходит во время выполнения.
Вероятно, я ничего не могу с этим поделать. Но кто -то еще видел это или может иметь какое -либо ощущение этого. Это на самом деле не имеет никакого смысла.

Подробнее здесь: https://stackoverflow.com/questions/794 ... e-designer
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»