В моей форме установлено публичное свойство типа ListE<T>
, где:
public class ListE<T> : IList<T>, ICollection<T>, IEnumerable<T>, IList, ICollection, IEnumerable
Да, это глоток, но это то, что требует от дизайнера, чтобы он отображался как редактируемая коллекция в окне свойств. Что это делает! Итак, я нажимаю маленькую кнопку [..], чтобы редактировать коллекцию, а затем нажимаю кнопку Добавить, чтобы добавить элемент в коллекцию.
Арифметическая операция привела к переполнению.
Теперь это очень простой список, немного больше, чем расширяющийся массив. Единственная часть, которая приближается к арифметике в целом, находится в функции расширения, и даже она использует сдвиг влево, а не умножение, чтобы не переполняться. Все это заставляет меня думать, что это исключение возникает в Designer, возможно, из-за небольшого невнимания к деталям реализации с моей стороны, но я не могу найти способ протестировать или отладить этот сценарий. У кого-нибудь есть какие-нибудь умные идеи?
РЕДАКТИРОВАТЬ: Да, я могу успешно использовать свойство, хорошо, даже вручную, т.е. в обработчике OnLoad
, и я полагаю, что к этому я должен прибегнуть, если я не смогу заставить это работать, но это не было бы идеально. (