Вопрос по c#, multithreading, toolstrip, menustrip – Проблема «Красного Креста» на MenuStrip и ToolStrip
У меня есть часть программного обеспечения, которая отлично работала на многих машинах, хотя на одной машине иногда возникает проблема, и MenuStrip и ToolStrip отображаются в виде пустого белого фона с красным крестиком над ним, как пользовательский элемент управления будет, если вы создали нулевой объект. Это не происходит во время отладки, и я не знаю, как заставить проблему повторно возникать, но это случается. Мне было интересно, если бы кто-нибудь знал, в чем может быть проблема?
Будет ли это версия .NET Framework?
Спасибо
Исключение из нехватки памяти мне.
Edit:
Что иногда может привести кSystem.InvalidOperationException: BufferedGraphicsContext
1000, на котором есть наши продукты. На этом компьютере я вижу, что программа .NET 3.5 иногда показывает красный X на своей сетке данных. И еще одна гораздо более простая программа .NET 2.0 получила красный крестик в меню menu. У меня есть только исходный код для более простой программы, но я могу сказать, что вообще нет никакого пользовательского кода, который влияет на этот компонент. Никаких кросс-нить, потому что ничего не обновляет Его содержимое задается во время разработки, причем один элемент добавляется к нему при загрузке программы. Отказ Red X произошел после загрузки программы.
Я был очень удивлен, увидев проблему в двух разных средах и в одной программе, в которой нет привязок данных. Я очень надеюсь, что на компьютере отключена виртуальная память.
Если это не так, то будут приветствоваться любые рекомендации по системным частям, которые совместно используются в .NET 2.0 и .NET 3.5.
Обновление: пользователь с проблемой удалил компьютер и заменил его (который решил проблему)
когда существует проблема GDI + («Красный X смерти»). Вы делаете какой-либо пользовательский рисунок вOnPaint
? Или, возможно, имеется графический ресурс или глиф, который поврежден или неправильно утилизирован.
Edit: Я перечитал ваш вопрос. Кажется, у вас есть это только на одной из машин. Я немного погуглил по этому поводу и наткнулся наэта старая нить, Пост внизу предполагает, что может быть проблема с отключенной виртуальной памятью:
We did manage to solve this - we were seeing the problem on a device running XP embedded. The XPe image developer had turned off Virtual Memory and as soon as we turned it on the problem went away. I believe it is just a symptom of the system running out of memory to display the graphics (maybe particularly if you use a lot of double buffering)
Надеюсь, это поможет.