ThinkGeo.com    |     Documentation    |     Premium Support

WorldMapKitWmsWpfOverlay throws null exception when setting IsVisible

 Guys, 


Just some minor issues I have run into. You may have fixed them or there is a reason behind these behaviors.  No worries as I have ways around them.


1. If you try setting the IsVisible property of a WorldMapKitWmsWpfOverlay it throws a null argument exception.   


2. Calling WpfMap.ZoomToPreviousExtent fires OnMapExtentChanging event twice.


Thanks,


K


 



Hi Klaus, 
  
 As I tested, when I set WorldMapKitWmsWpfOverlay to invisible, it doesn’t throw exception; I just did a simple test; could you show me the code you are using? For your second issue, I think you might mean CurrentExtentChanging event. I cannot recreate this issue neither with our latest Dll. Please try the latest Dll and try or show us you code so that I can recreate it. 
  
 Thanks for reporting this. 
 Howard

 Howard, 


I was just trying something simple like this:




var worldOverlay = new WorldMapKitWmsWpfOverlay();
                worldOverlay.IsVisible = true;
                worldOverlay.DrawTilesProgressChanged += OnMapProgressChanged;
                map.Overlays.Add("WMK", worldOverlay);

 


If I step through the line where I set IsVisible, an exception is thrown.  Maybe I need DII. How do I get this?  I am still in eval mode till our purchase comes through.




Dear Klaus, 
  
 I tested your code. It worked fine for me. I have been working with Map suite for a while. One think i noticed that, the exceptions are misleading.So, my suggestion is that you should check other part of the code and see if your application is generating exception else where. 
  
 Thanks 
  
 Raquib

 



Raquibur, no, it is definitely not my code.   
  
 i just modified the DisplayASimpleMap sample as follows: 
   private void WpfMap_Loaded(object sender, RoutedEventArgs e)
        {
            Map1.MapUnit = GeographyUnit.DecimalDegree;
            Map1.CurrentExtent = new RectangleShape(-155.733, 95.60, 104.42, -81.9); 

            WorldMapKitWmsWpfOverlay worldOverlay = new WorldMapKitWmsWpfOverlay();
            // Step over this line and a null reference exception is thrown.
            // If i set IsVisible to false, however,exception is not thrown.
            worldOverlay.IsVisible = true;
            Map1.Overlays.Add("WMK", worldOverlay);

            Map1.Refresh();
        } 
 
  
 That line throw an exception when IsVisible== true.   It could be my DLL versions. I am using 4.0.40.

Dear Klaus, 
  
 I think you are right. I tried with DLL version 4.0.40 and i get the same issue. 
  


Hi Klaus,



I think this is a bug in 4.0.40 which is fixed in the latest version. Now the latest build is 4.0.91.0, you can download the latest package everyday at:

helpdesk.thinkgeo.com



Just let me know if you have more queries.



Thanks,

Howard



That was it, thanks Howard.



Klaus, 
  
 You are welcome, just feel free to let us know if you have more queries. 
  
 Thanks, 
 Howard