WmsOverlay¶
Namespace: ThinkGeo.UI.Maui
public class WmsOverlay : WebBasedTileOverlay`1, System.ComponentModel.INotifyPropertyChanged, Microsoft.Maui.Controls.Internals.IDynamicResourceHandler, Microsoft.Maui.Controls.IElementDefinition, Microsoft.Maui.Controls.Internals.INameScope, Microsoft.Maui.Controls.IElementController, Microsoft.Maui.IVisualTreeElement, Microsoft.Maui.IElement, Microsoft.Maui.Controls.IEffectControlProvider, Microsoft.Maui.IToolTipElement, Microsoft.Maui.IContextFlyoutElement, Microsoft.Maui.Controls.IControlsElement, Microsoft.Maui.Controls.StyleSheets.IStyleSelectable, Microsoft.Maui.Controls.Internals.INavigationProxy, Microsoft.Maui.Controls.IAnimatable, Microsoft.Maui.Controls.IVisualElementController, Microsoft.Maui.Controls.IResourcesProvider, Microsoft.Maui.Controls.IStyleElement, Microsoft.Maui.Controls.IFlowDirectionController, Microsoft.Maui.Controls.IPropertyPropagationController, Microsoft.Maui.Controls.IVisualController, Microsoft.Maui.Controls.IWindowController, Microsoft.Maui.IView, Microsoft.Maui.ITransform, Microsoft.Maui.Controls.IControlsVisualElement, Microsoft.Maui.Controls.StyleSheets.IStylable, Microsoft.Maui.Controls.IViewController, Microsoft.Maui.Controls.Internals.IGestureController, Microsoft.Maui.Controls.IGestureRecognizers, Microsoft.Maui.IPropertyMapperView, Microsoft.Maui.HotReload.IHotReloadableView, Microsoft.Maui.IReplaceableView, Microsoft.Maui.Controls.IControlsView, Microsoft.Maui.ILayout, Microsoft.Maui.IContainer, System.Collections.Generic.IList`1[[Microsoft.Maui.IView, Microsoft.Maui, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]], System.Collections.Generic.ICollection`1[[Microsoft.Maui.IView, Microsoft.Maui, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]], System.Collections.Generic.IEnumerable`1[[Microsoft.Maui.IView, Microsoft.Maui, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]], System.Collections.IEnumerable, Microsoft.Maui.ISafeAreaView, Microsoft.Maui.IPadding, Microsoft.Maui.ICrossPlatformLayout, Microsoft.Maui.Controls.IBindableLayout, Microsoft.Maui.Controls.IPaddingElement, Microsoft.Maui.Controls.IInputTransparentContainerElement, Microsoft.Maui.IAbsoluteLayout, System.IDisposable, ThinkGeo.Core.IWmsEntity
Inheritance Object → BindableObject → Element → NavigableElement → VisualElement → View → Layout → AbsoluteLayout → Overlay → TileOverlay → WebBasedTileOverlay<WmsAsyncLayer> → WmsOverlay
Implements INotifyPropertyChanged, IDynamicResourceHandler, IElementDefinition, INameScope, IElementController, IVisualTreeElement, IElement, IEffectControlProvider, IToolTipElement, IContextFlyoutElement, IControlsElement, IStyleSelectable, INavigationProxy, IAnimatable, IVisualElementController, IResourcesProvider, IStyleElement, IFlowDirectionController, IPropertyPropagationController, IVisualController, IWindowController, IView, ITransform, IControlsVisualElement, IStylable, IViewController, IGestureController, IGestureRecognizers, IPropertyMapperView, IHotReloadableView, IReplaceableView, IControlsView, ILayout, IContainer, IList<IView>, ICollection<IView>, IEnumerable<IView>, IEnumerable, ISafeAreaView, IPadding, ICrossPlatformLayout, IBindableLayout, IPaddingElement, IInputTransparentContainerElement, IAbsoluteLayout, IDisposable, IWmsEntity
Properties¶
Parameters¶
Gets a dictionary whose items will be passed to the WMS server as parameters.
public Dictionary<string, string> Parameters { get; }
Property Value¶
Dictionary<String, String>
A dictionary whose items will be passed to the WMS server as parameters.
IsTransparent¶
This property gets or sets whether the response map image's background color is transparent or not.
public bool IsTransparent { get; set; }
Property Value¶
Exceptions¶
This property indicates the format in which the client wishes to be notified of service exceptions.
public string Exceptions { get; set; }
Property Value¶
Remarks:
Upon receiving a request that is invalid according to the OGC standard, the server shall issue a service exception report. The service report is meant to describe to the client application or its human user the reason(s) that the request is invalid.
CapabilitiesCacheTimeout¶
The timeout for Capabilities Cache, its 10 minutes by default
public TimeSpan CapabilitiesCacheTimeout { get; set; }
Property Value¶
ActiveLayerNames¶
This property represents the available layers that can be requested from the client and shown on the map.
public Collection<string> ActiveLayerNames { get; }
Property Value¶
Remarks:
When requesting a map, a client may specify the layers to be shown on the map.
ActiveStyleNames¶
This property represents the available styles that can be requested from the client and shown on the map.
public Collection<string> ActiveStyleNames { get; }
Property Value¶
Remarks:
When requesting a map, a client may specify the styles to be shown on the map.
OutputFormat¶
This property gets or sets the desired output format for the map requested from the WMS.
public string OutputFormat { get; set; }
Property Value¶
Remarks:
When requesting a map, a client may specify the output format in which to show the map. Format are specified as MIME types such as "image/gif" or "image/png".
UserAgent¶
This property allows you to specify a custom user-agent request header when making requests to a Web Map Service (WMS) server. This header provides information about the client application or device and can be useful for server-side logging and analytics.
public string UserAgent { get; set; }
Property Value¶
AxisOrder¶
This property specifies the order in which the coordinate axes are arranged when making requests to a Web Map Service (WMS) server. It is used to define the spatial reference system for the layer.
public WmsAxisOrder AxisOrder { get; set; }
Property Value¶
WmsAxisOrder
Credentials¶
This property gets or sets the base authentication interface for retrieving credentials for Web Client authentication.
public ICredentials Credentials { get; set; }
Property Value¶
ICredentials
Crs¶
This property gets or sets the projected or geographic coordinate reference system to be used.
public string Crs { get; set; }
Property Value¶
Version¶
This property gets the version.
public string Version { get; }
Property Value¶
FastMode¶
This property gets or sets whether request and parse capabilities.
public bool FastMode { get; set; }
Property Value¶
Uri¶
This property specifies the URI of the WMS server.
public Uri Uri { get; set; }
Property Value¶
Uri
Proxy¶
This property gets or sets the proxy used for requesting a Web Response.
public IWebProxy Proxy { get; set; }
Property Value¶
IWebProxy
WebBasedLayer¶
public WmsAsyncLayer WebBasedLayer { get; set; }
Property Value¶
WmsAsyncLayer
WebProxy¶
Gets or sets the Web Proxy for web service.
public IWebProxy WebProxy { get; set; }
Property Value¶
IWebProxy
TimeoutInSeconds¶
Gets or sets the length of time, in seconds, before the request times out.
public int TimeoutInSeconds { get; set; }
Property Value¶
TileWidth¶
Gets or sets the width of the tile.
public int TileWidth { get; }
Property Value¶
Int32
The width of the tile.
TileHeight¶
Gets or sets the height of the tile.
public int TileHeight { get; }
Property Value¶
Int32
The height of the tile.
IsCacheOnly¶
Gets or sets a value indicating whether this instance is cache only.
public bool IsCacheOnly { get; set; }
Property Value¶
Boolean
true if this instance is cache only; otherwise, false.
TileCache¶
Gets or sets the tile cache.
public RasterTileCache TileCache { get; set; }
Property Value¶
RasterTileCache
The tile cache.
TileType¶
Gets and sets the overlay is formed by multiple tiles or single tile.
public TileType TileType { get; set; }
Property Value¶
TileType
The type of the tile.
TileSnappingMode¶
Gets or sets the tile snapping mode.
public TileSnappingMode TileSnappingMode { get; set; }
Property Value¶
TileSnappingMode
The tile snapping mode. By default it's Snapping
Remarks:
TileSnappingMode.Snapping is the default value, and it's always recommended as it brings in better performance (less rendering, take good advantage of caching, etc.)
TransitionEffect¶
Gets or sets the tile transition effect.
public TransitionEffect TransitionEffect { get; set; }
Property Value¶
TransitionEffect
The tile snapping mode.
ZoomLevelSet¶
Gets or sets the ZoomLevelSet for the TileOverlay. By default, this will snap to the scales defined in the ZoomLevelSet to fetch the internal data. To disable snapping, set TileSnappingMode to NoSnapping (not recommended).
public ZoomLevelSet ZoomLevelSet { get; set; }
Property Value¶
ZoomLevelSet
Remarks:
Ensure that the ZoomLevelSet scales align with those of the tile provider, especially when using third-party data.
Name¶
Gets or sets the name of this overlay.
public string Name { get; set; }
Property Value¶
DrawingExceptionMode¶
This property gets and sets the DrawingExceptionMode used when an exception occurs during drawing.
public DrawingExceptionMode DrawingExceptionMode { get; set; }
Property Value¶
DrawingExceptionMode
The drawing exception mode.
IsEmpty¶
This property gets if this overlay is empty or not.
public bool IsEmpty { get; }
Property Value¶
Remarks:
This property enhances the performance of the overlay while drawing. If is true, we will skip drawing this overlay and continue drawing the next overlay.
Children¶
public IList<IView> Children { get; }
Property Value¶
Count¶
public int Count { get; }
Property Value¶
IsReadOnly¶
public bool IsReadOnly { get; }
Property Value¶
Item¶
public IView Item { get; set; }
Property Value¶
IView
IsClippedToBounds¶
public bool IsClippedToBounds { get; set; }
Property Value¶
Padding¶
public Thickness Padding { get; set; }
Property Value¶
Thickness
IgnoreSafeArea¶
public bool IgnoreSafeArea { get; set; }
Property Value¶
CascadeInputTransparent¶
public bool CascadeInputTransparent { get; set; }
Property Value¶
GestureRecognizers¶
public IList<IGestureRecognizer> GestureRecognizers { get; }
Property Value¶
HorizontalOptions¶
public LayoutOptions HorizontalOptions { get; set; }
Property Value¶
LayoutOptions
Margin¶
public Thickness Margin { get; set; }
Property Value¶
Thickness
VerticalOptions¶
public LayoutOptions VerticalOptions { get; set; }
Property Value¶
LayoutOptions
Visual¶
public IVisual Visual { get; set; }
Property Value¶
IVisual
FlowDirection¶
public FlowDirection FlowDirection { get; set; }
Property Value¶
FlowDirection
Window¶
public Window Window { get; }
Property Value¶
Window
AnchorX¶
public double AnchorX { get; set; }
Property Value¶
AnchorY¶
public double AnchorY { get; set; }
Property Value¶
BackgroundColor¶
public Color BackgroundColor { get; set; }
Property Value¶
Color
Background¶
public Brush Background { get; set; }
Property Value¶
Brush
Behaviors¶
public IList<Behavior> Behaviors { get; }
Property Value¶
Bounds¶
public Rect Bounds { get; }
Property Value¶
Rect
Height¶
public double Height { get; }
Property Value¶
HeightRequest¶
public double HeightRequest { get; set; }
Property Value¶
InputTransparent¶
public bool InputTransparent { get; set; }
Property Value¶
IsEnabled¶
public bool IsEnabled { get; set; }
Property Value¶
IsFocused¶
public bool IsFocused { get; }
Property Value¶
IsVisible¶
public bool IsVisible { get; set; }
Property Value¶
MinimumHeightRequest¶
public double MinimumHeightRequest { get; set; }
Property Value¶
MinimumWidthRequest¶
public double MinimumWidthRequest { get; set; }
Property Value¶
MaximumHeightRequest¶
public double MaximumHeightRequest { get; set; }
Property Value¶
MaximumWidthRequest¶
public double MaximumWidthRequest { get; set; }
Property Value¶
Opacity¶
public double Opacity { get; set; }
Property Value¶
Rotation¶
public double Rotation { get; set; }
Property Value¶
RotationX¶
public double RotationX { get; set; }
Property Value¶
RotationY¶
public double RotationY { get; set; }
Property Value¶
Scale¶
public double Scale { get; set; }
Property Value¶
ScaleX¶
public double ScaleX { get; set; }
Property Value¶
ScaleY¶
public double ScaleY { get; set; }
Property Value¶
TranslationX¶
public double TranslationX { get; set; }
Property Value¶
TranslationY¶
public double TranslationY { get; set; }
Property Value¶
Triggers¶
public IList<TriggerBase> Triggers { get; }
Property Value¶
Width¶
public double Width { get; }
Property Value¶
WidthRequest¶
public double WidthRequest { get; set; }
Property Value¶
X¶
public double X { get; }
Property Value¶
Y¶
public double Y { get; }
Property Value¶
Clip¶
public Geometry Clip { get; set; }
Property Value¶
Geometry
Batched¶
public bool Batched { get; }
Property Value¶
DisableLayout¶
public bool DisableLayout { get; set; }
Property Value¶
IsInPlatformLayout¶
public bool IsInPlatformLayout { get; set; }
Property Value¶
IsPlatformStateConsistent¶
public bool IsPlatformStateConsistent { get; set; }
Property Value¶
IsPlatformEnabled¶
public bool IsPlatformEnabled { get; set; }
Property Value¶
Resources¶
public ResourceDictionary Resources { get; set; }
Property Value¶
ResourceDictionary
Frame¶
public Rect Frame { get; set; }
Property Value¶
Rect
Handler¶
public IViewHandler Handler { get; set; }
Property Value¶
IViewHandler
Shadow¶
public Shadow Shadow { get; set; }
Property Value¶
Shadow
ZIndex¶
public int ZIndex { get; set; }
Property Value¶
DesiredSize¶
public Size DesiredSize { get; protected set; }
Property Value¶
Size
IsLoaded¶
public bool IsLoaded { get; }
Property Value¶
Navigation¶
public INavigation Navigation { get; internal set; }
Property Value¶
INavigation
Style¶
public Style Style { get; set; }
Property Value¶
Style
StyleClass¶
public IList<string> StyleClass { get; set; }
Property Value¶
class¶
public IList<string> class { get; set; }
Property Value¶
NavigationProxy¶
public NavigationProxy NavigationProxy { get; }
Property Value¶
NavigationProxy
AutomationId¶
public string AutomationId { get; set; }
Property Value¶
ClassId¶
public string ClassId { get; set; }
Property Value¶
Effects¶
public IList<Effect> Effects { get; }
Property Value¶
Id¶
public Guid Id { get; }
Property Value¶
StyleId¶
public string StyleId { get; set; }
Property Value¶
LogicalChildren¶
public ReadOnlyCollection<Element> LogicalChildren { get; }
Property Value¶
RealParent¶
public Element RealParent { get; }
Property Value¶
Element
Parent¶
public Element Parent { get; set; }
Property Value¶
Element
EffectControlProvider¶
public IEffectControlProvider EffectControlProvider { get; set; }
Property Value¶
IEffectControlProvider
Handler¶
public IElementHandler Handler { get; set; }
Property Value¶
IElementHandler
Dispatcher¶
public IDispatcher Dispatcher { get; }
Property Value¶
IDispatcher
BindingContext¶
public object BindingContext { get; set; }
Property Value¶
Constructors¶
WmsOverlay()¶
Constructor of WmsOverlay class.
public WmsOverlay()
WmsOverlay(Uri)¶
Constructor of WmsOverlay class.
public WmsOverlay(Uri uri)
Parameters¶
uri
Uri
This parameter indicates the uri for the Wms server.
WmsOverlay(Uri, IWebProxy, String, WmsAxisOrder, String, Boolean)¶
Constructor of WmsOverlay class.
public WmsOverlay(Uri uri, IWebProxy proxy, string crs, WmsAxisOrder axisOrder, string version, bool fastMode)
Parameters¶
uri
Uri
This parameter indicates the uri for the Wms server.
proxy
IWebProxy
This parameter indicates the web proxy of the request
crs
String
the projected or geographic coordinate reference system to be used.
axisOrder
WmsAxisOrder
the axis order of the layer
version
String
The version of the WMS, could be 1.3 or 1.1
fastMode
Boolean
whether request and parse capabilities
Methods¶
GetServerLayers()¶
This method returns all layers at the server side.
public Collection<WmsServerLayer> GetServerLayers()
Returns¶
Collection<WmsServerLayer>
This method returns all layers at the server side.
Remarks:
None.
GetServerStyleNames()¶
This method returns the names of all styles at the server side.
public Collection<string> GetServerStyleNames()
Returns¶
Collection<String>
This method returns the names of all styles at the server side.
Remarks:
None.
GetServerOutputFormats()¶
This method returns the output format at the server side.
public Collection<string> GetServerOutputFormats()
Returns¶
Collection<String>
This method returns the output format at the server side.
Remarks:
None.
GetServerCrsCollection()¶
This method returns the projected or geographic coordinate reference systems to be used.
public Collection<string> GetServerCrsCollection()
Returns¶
GetServerExceptionFormats()¶
This method returns the exception format at the server side.
public Collection<string> GetServerExceptionFormats()
Returns¶
Collection<String>
This method returns the exception format at the server side.
Remarks:
None.
GetServiceVersion()¶
This API gets the WMS server version of the service.
public string GetServiceVersion()
Returns¶
String
Returning a string reflecting the version of the service in WMS.
GetServerFeatureInfoFormats()¶
This API gets the WMS server FeatureInfo formats of the service.
public Collection<string> GetServerFeatureInfoFormats()
Returns¶
Collection<String>
This API returns the FeatureInfo formats supported on the server-side.
GetServerCapabilitiesXml()¶
This API gets the GetCapabilities document of the service.
public string GetServerCapabilitiesXml()
Returns¶
String
This API returns the GetCapabilities document of the service.
GetServiceBaseUrl()¶
This API gets the WMS base url of the service.
public string GetServiceBaseUrl()
Returns¶
String
Returns a string reflecting the WMS base url.
OpenAsyncCore(IMapView, CancellationToken)¶
protected Task OpenAsyncCore(IMapView mapView, CancellationToken cancellationToken)
Parameters¶
mapView
IMapView
cancellationToken
CancellationToken
Returns¶
GetBoundingBoxCore()¶
This method returns the bounding box of WmsOverlay.
protected RectangleShape GetBoundingBoxCore()
Returns¶
RectangleShape
CloseAsyncCore(CancellationToken)¶
This method closes WmsOverlay and releases any resources it was using.
protected Task CloseAsyncCore(CancellationToken cancellationToken)
Parameters¶
cancellationToken
CancellationToken
Returns¶
GetTileCore()¶
protected TileView GetTileCore()
Returns¶
Events¶
SendingHttpRequest¶
public event EventHandler<SendingHttpRequestMessageEventArgs> SendingHttpRequest;
ReceivedHttpResponse¶
public event EventHandler<ReceivedHttpResponseMessageEventArgs> ReceivedHttpResponse;
DrawingTile¶
The event raised before Drawing a tile
public event EventHandler<DrawingTileTileOverlayEventArgs> DrawingTile;
PostedTile¶
The event raised after Posted a tile
public event EventHandler<PostedTileTileOverlayEventArgs> PostedTile;
Drawing¶
This event raises before the overlay is drawing.
public event EventHandler<DrawingOverlayEventArgs> Drawing;
Drawn¶
This event raises after the overlay is drawn.
public event EventHandler<DrawnOverlayEventArgs> Drawn;
ChildrenReordered¶
public event EventHandler ChildrenReordered;
Focused¶
public event EventHandler<FocusEventArgs> Focused;
MeasureInvalidated¶
public event EventHandler MeasureInvalidated;
SizeChanged¶
public event EventHandler SizeChanged;
Unfocused¶
public event EventHandler<FocusEventArgs> Unfocused;
BatchCommitted¶
public event EventHandler<EventArg<VisualElement>> BatchCommitted;
FocusChangeRequested¶
public event EventHandler<FocusRequestArgs> FocusChangeRequested;
Loaded¶
public event EventHandler Loaded;
Unloaded¶
public event EventHandler Unloaded;
ChildAdded¶
public event EventHandler<ElementEventArgs> ChildAdded;
ChildRemoved¶
public event EventHandler<ElementEventArgs> ChildRemoved;
DescendantAdded¶
public event EventHandler<ElementEventArgs> DescendantAdded;
DescendantRemoved¶
public event EventHandler<ElementEventArgs> DescendantRemoved;
ParentChanging¶
public event EventHandler<ParentChangingEventArgs> ParentChanging;
ParentChanged¶
public event EventHandler ParentChanged;
HandlerChanging¶
public event EventHandler<HandlerChangingEventArgs> HandlerChanging;
HandlerChanged¶
public event EventHandler HandlerChanged;
PropertyChanged¶
public event PropertyChangedEventHandler PropertyChanged;
PropertyChanging¶
public event PropertyChangingEventHandler PropertyChanging;
BindingContextChanged¶
public event EventHandler BindingContextChanged;