[c#]InvalidActiveXStateException bij functies en properties

Pagina: 1
Acties:

  • JeroenTheStig
  • Registratie: Mei 2000
  • Laatst online: 09:57
Ik ben bezig met het toevoegen van een activeX component aan m'n c#-project. Het toevoegen gaat prima, en wordt netjes weergegeven op m'n scherm. Maar wanneer ik functies of properties wil aanroepen, krijg ik een InvalidActiveXStateException. Ik heb geprobeerd om voor en na het initialiseren van m'n activeX component de methodes BeginInit() en EndInit() aan te roepen, maar dit heeft niet het gewenste resultaat.

Het gaat om de volgende code:

C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
private AxMapWinGIS.AxMap BuildMap()
    {
        System.Console.WriteLine("ocx state: " + _map.OcxState);
        ((System.ComponentModel.ISupportInitialize)(_map)).BeginInit();
        _map.Dock = DockStyle.Fill;
        _map.AllowDrop = true;

        _map.Enabled = true;
        _map.FileDropped += new AxMapWinGIS._DMapEvents_FileDroppedEventHandler(map_FileDroppedEvent);
        _map.SelectBoxDrag += new AxMapWinGIS._DMapEvents_SelectBoxDragEventHandler(map_SelectBoxDragEvent);
        _map.SelectBoxFinal += new AxMapWinGIS._DMapEvents_SelectBoxFinalEventHandler(map_SelectBoxFinalEvent);
        _map.MouseMoveEvent += new AxMapWinGIS._DMapEvents_MouseMoveEventHandler(map_MouseMoveEvent);
        _map.MouseUpEvent += new AxMapWinGIS._DMapEvents_MouseUpEventHandler(map_MouseUpEvent);
        _map.MouseDownEvent += new AxMapWinGIS._DMapEvents_MouseDownEventHandler(map_MouseDownEvent);
        _map.MapStateEvent += new AxMapWinGIS._DMapEvents_MapStateEventHandler(map_MapStateEvent);

        _map.SendMouseDown = true;
        _map.SendMouseUp = true;
        _map.SendMouseMove = true;
        _map.SendSelectBoxFinal = true;
        _map.SendSelectBoxDrag = true;


       ((System.ComponentModel.ISupportInitialize)(_map)).EndInit();
        return _map;
    }


Bij de regel
code:
1
_map.SendMouseDown = true;


gaat het fout. Wie weet wat ik verkeerd doe?

Verwijderd

Misschien dat het volgende werkt.

Probeer eens de waarde 1 ipv true. Booleans en integers zijn in .Net niet zo uitwisselbaar als in bijvoorbeeld C(++).

  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 21-05 14:59

pjvandesande

GC.Collect(head);

Verwijderd schreef op 16 juli 2004 @ 23:56:
Misschien dat het volgende werkt.

Probeer eens de waarde 1 ipv true. Booleans en integers zijn in .Net niet zo uitwisselbaar als in bijvoorbeeld C(++).
Een boolean set je altijd met 'true'.

Je hebt hier neem ik aan al gekeken: http://msdn.microsoft.com...teexceptionclasstopic.asp