|
POST
|
If the server says that tiles are ok to cache (it usually does), tiles are being cached. It's not really a layer specific thing. Any web response that a server set the cache control or etag headers on will be cached and will also auto-expire based on those headers.
... View more
03-27-2020
11:44 PM
|
0
|
6
|
3955
|
|
POST
|
Thanks. That confirms it's most likely the Android HTTP Stack that has some problems with authenticating against that specific service. Unfortunately Xamarin.Android doesn't have a great single http implementation that fits all scenarios. I'd recommend trying picking a different HTTP stack for Android as documented here: HttpClient Stack and SSL/TLS Implementation Selector for Android - Xamarin | Microsoft Docs
... View more
03-26-2020
01:01 PM
|
0
|
1
|
3829
|
|
POST
|
Are you on an older version of runtime? I believe those symbol types weren't fully supported until more recent versions.
... View more
03-19-2020
04:48 PM
|
0
|
2
|
1814
|
|
POST
|
If you know up front that you are for sure going to need all the attributes for all the features, you can set the QueryFeatureFields to "LoadAll" and it'll fetch all data. The idea is that you might be querying 1000s of features, so instead of downloading ALL data, we fetch the minimum to render/display them, and once you click at a feature, you'd go and fetch the full data just for that one feature. So the default is configured for performance-first. However there might be cases where you know you'll get a very limited set of results back, or you know you're going to need all the attributes from all the features, and you can then use this call to avoid the extra LoadAsync call and webrequest. ServiceFeatureTable.QueryRelatedFeaturesAsync Method
... View more
03-13-2020
09:09 AM
|
0
|
0
|
3242
|
|
POST
|
Could you please try the demo app you're referring to with a different platform then (iOS, UWP or Android) ? It would be very helpful for trouble shooting if we know whether we have to focus on an Android specific issue, or a general oauth issue with this specific authentication type.
... View more
03-11-2020
03:37 PM
|
2
|
3
|
3829
|
|
POST
|
Since it's a Forms app, does the code work on UWP and/or iOS? Curious if the problem is the code itself, or the android http stack.
... View more
03-10-2020
02:23 PM
|
0
|
5
|
3829
|
|
POST
|
> I want to detect when CanExecute is true before the end of StartAsync. You'll need to listen to the CompleteCommand.CanExecuteChanged event to be notified if the command's CanExecute has potentially changed, then call CanExecute(...) each time it fires to check the status. Ie something along the lines of: SketchEditor.CompleteCommand.CanExecuteChanged += (s,e) => { if(SketchEditor.CompleteCommand.CanExecute(null)) { DoSomething(); } }; Geometry g = await MapView.SketchEditor.StartAsync(SketchCreationMode.Point, true); I'm just now realizing you're drawing a point. Point geometry completes immediately when you click.
... View more
03-10-2020
12:03 PM
|
0
|
0
|
2408
|
|
POST
|
Is this the code you have? - //Step 1 - Geometry g = await MapView.SketchEditor.StartAsync(SketchCreationMode.Point, true); //Async method - MapView.SketchEditor.CompleteCommand.CanExecute(null); //Return false If so, the second line of code won't run until the draw has completed, because you're awaiting the draw to complete. Remove the await if that's what you want. Task<Geometry> drawTask = MapView.SketchEditor.StartAsync(SketchCreationMode.Point, true); [...run other core... ] Geometry g = await drawTask;
... View more
03-10-2020
09:40 AM
|
0
|
2
|
2408
|
|
POST
|
I think I'm at a point where I just don't understand what you're trying to achieve. I don't get what you mean by the order of commands. Commands don't execute until you press the button they are bound to. Perhaps there's just a misunderstanding of what these commands are used for. Also you don't have to use the commands, but can just execute methods on the SketchEditor yourself.
... View more
03-10-2020
08:45 AM
|
0
|
4
|
2408
|
|
POST
|
The ICommand interface should deal with automatically enabling/disabling the button, so if you don't want to hide the button this will work exactly like you want just by binding the Command to the button. If you do want to hide the button, you would override the visual state of the button to instead collapse it, instead of disabling it. See: wpf - how to hide a button that is bound to a command that cannot execute? - Stack Overflow
... View more
03-09-2020
01:29 PM
|
0
|
6
|
2408
|
|
POST
|
The GeoTapped event also has e.Location which will give you the MapPoint 😉 How you query a layer depends on the layer type. If it's a feature layer, you'd get it's FeatureTable and use the QueryAsync method.
... View more
03-09-2020
10:47 AM
|
1
|
6
|
3617
|
|
POST
|
It's not currently supported out of the box. WPF does have a way to do a perspective transform of a control, but it's going to be a little bit tricky to maintain the right size of your control (you'd have to extend it beyond the bounds of the view to get full coverage). It should be doable, but you'll probably have to get out the good old trigonometry books to get it right, and update it each time the parent control size changes I'm curious why you can't use 3D? The WGS84 SR is really just the coordinate system it communicates in. That doesn't mean the data actually have to be in this SR (albeit if your data doesn't support re-projection, it should be precooked in either webmercator or wgs84)
... View more
03-09-2020
09:14 AM
|
0
|
0
|
948
|
|
POST
|
The map is being smart and not doing work if the layer isn't actually visible. This means it's not actually pulling down data at all in this case. The idea behind identify is you're able to click what you see. If you can't see it, you can't click it. The alternative is to do a spatial query against that layer instead if using identify.
... View more
03-09-2020
09:11 AM
|
1
|
8
|
3617
|
|
POST
|
First wrt GraphicsOverlays, as these are not layers, they won't be able to go into the map itself. They're always-on-top and maintained separately from the map. They're typically meant for session-like data, like search results, routes, red lines etc, and can transcend multiple maps (ie you can retain search results, but go pick a completely different map, and your search results are still there). It's also nice to know that your view model always have a set of graphics layers available to place these things in, regardless of which map is currently open. Basemap is sort of two group layers in itself: It contains the baselayers, and references layers. Baselayers goes on the bottom, and reference layers (typically pre-generated labels) goes on top of the operational layers. The idea is that if you want to change the basemap, you just set the basemap property, and your operational layers stay intact. ie myMap.Basemap = Basemap.CreateImagery(); It makes it very easy to build a basemap-switching experience. GroupLayers in itself doesn't really do anything, other than help you manage a set of layers together, and turn them on/off together. They are mostly for organizing data in your operational layers and mostly useful if you have a Table-of-contents like control. I'm curious what you need group layers for outside of operational layers. Perhaps you could expand a little on that?
... View more
03-09-2020
09:08 AM
|
0
|
0
|
862
|
|
POST
|
The easiest is to just bind the command to the button, and it'll automatically enable/disable. That's actually the main reason it's a command. ie <Button Command="{Binding SketchEditor.CompleteCommand, ElementName=mapView}" Content="Complete" /> If you want to do it programmatically, use the CanExecuteChanged event on the ICommand interface to detect when the state of the command might have changed.
... View more
03-02-2020
09:09 AM
|
0
|
2
|
4268
|
| Title | Kudos | Posted |
|---|---|---|
| 2 | 05-11-2026 07:05 AM | |
| 2 | 03-19-2026 06:03 PM | |
| 1 | 03-03-2026 04:41 PM | |
| 1 | 02-26-2018 07:53 AM | |
| 1 | 02-26-2018 07:51 AM |
| Online Status |
Offline
|
| Date Last Visited |
4 weeks ago
|