MenuStrip Error

hlasů
0

Moji uživatelé mají přerušovaný chybu při používání aplikace Windows Forms postavený v VB.NET 3.5. Zřejmě, když kliknou na formuláři a přepracované podobě barev, červené ‚X‘ bude přetírat kontrolu MenuStrip a aplikace spadne s následující chybou.

Má někdo neviděl tohle? Může mi někdo místo v správným směrem?

    System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
       Parameter name: index

   at System.Collections.ArrayList.get_Item(Int32 index)
   at System.Windows.Forms.ToolStripItemCollection.get_Item(Int32 index)
   at System.Windows.Forms.ToolStrip.OnPaint(PaintEventArgs e)
   at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer, Boolean disposeEventArgs)
   at System.Windows.Forms.Control.WmPaint(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.MenuStrip.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Položena 05/09/2008 v 13:31
zdroj uživatelem
V jiných jazycích...                            


4 odpovědí

hlasů
0

Jste přidávání položek do tohoto pruhu dynamicky?

Odpovězeno 05/09/2008 v 13:33
zdroj uživatelem

hlasů
0

Budete muset zjistit, kde v kódu se to děje, ale to je být způsobena celočíselnou proměnnou se používá pro přístup k rozbalovací menu. Před použitím nabídky, použijte příkaz if, aby se ujistil, že je mezi 0 a velikost kolekce - 1. Také umístit zlomový bod, kde se vytvořit proměnnou a krokovat kód sleduje, co se s ním stane.

Také, ukázkový kód, jak používáte rozbalovací menu by pomohlo.

Odpovězeno 05/09/2008 v 13:45
zdroj uživatelem

hlasů
0

Při pohledu do kódu, zjistil jsem, že menu je zrušeno a znovu načteny při každém data forma je svěží. Nabídka jen potřebuje být naloženo jednou, když je forma původně naloženo.

Myslím si, že menu je možné dostat vymazán, zatímco forma je v procesu bytí maloval. Myslíte si, že to může být pravda?

Odpovězeno 05/09/2008 v 14:34
zdroj uživatelem

hlasů
0

Díky vám všem, které pomohly mi ukazovat správným směrem. Udělal jsem změnu pouze jasné / přidat do nabídky při načtení formuláře, takže jsem neměla by tato chyba zobrazí znovu, když forma je malba.

Odpovězeno 05/09/2008 v 17:21
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more