GeoBlazor Pro
dymaptic.GeoBlazor.Pro
dymaptic.GeoBlazor.Pro.Components
FeatureTemplatesViewModel Class
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html”>GeoBlazor Docs</a> Provides the logic for the <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates.html”>FeatureTemplates</a> widget. <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html”>ArcGIS Maps SDK for JavaScript</a>
public class FeatureTemplatesViewModel : dymaptic.GeoBlazor.Core.Components.MapComponent, dymaptic.GeoBlazor.Core.Interfaces.IViewModel
Inheritance System.Object 🡒 Microsoft.AspNetCore.Components.ComponentBase 🡒 dymaptic.GeoBlazor.Core.Components.MapComponent 🡒 FeatureTemplatesViewModel
Implements dymaptic.GeoBlazor.Core.Interfaces.IViewModel
Constructors
FeatureTemplatesViewModel() Constructor
Parameterless constructor for use as a Razor Component.
public FeatureTemplatesViewModel();
FeatureTemplatesViewModel(Nullable<bool>, FilterFunction, GroupByFunction, IReadOnlyList<IFeatureTemplatesViewModelLayers>, string) Constructor
Constructor for use in C# code. Use named parameters (e.g., item1: value1, item2: value2) to set properties in any order.
public FeatureTemplatesViewModel(System.Nullable<bool> disabled=null, dymaptic.GeoBlazor.Core.Functions.FilterFunction? filterFunction=null, dymaptic.GeoBlazor.Core.Functions.GroupByFunction? groupByFunctionGroupBy=null, System.Collections.Generic.IReadOnlyList<dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers>? layers=null, string? stringGroupBy=null);
Parameters
disabled
System.Nullable<System.Boolean>
Used to disable the associated user interface. default false <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#disabled”>ArcGIS Maps SDK for JavaScript</a>
filterFunction
dymaptic.GeoBlazor.Core.Functions.FilterFunction
<a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates.html#FilterFunction”>Function</a> can be defined to help filter <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-TemplateItem.html”>template items</a> within the widget. <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#filterFunction”>ArcGIS Maps SDK for JavaScript</a>
groupByFunctionGroupBy
dymaptic.GeoBlazor.Core.Functions.GroupByFunction
It is possible to group <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-TemplateItem.html”>template items</a>. default “layer” <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#groupBy”>ArcGIS Maps SDK for JavaScript</a>
layers
System.Collections.Generic.IReadOnlyList<dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers>
An array of <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html”>FeatureLayers</a> that are associated with the widget. <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#layers”>ArcGIS Maps SDK for JavaScript</a>
stringGroupBy
System.String
It is possible to group <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-TemplateItem.html”>template items</a>. default “layer” <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#groupBy”>ArcGIS Maps SDK for JavaScript</a>
Properties
FeatureTemplatesViewModel.Disabled Property
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodeldisabled-property”>GeoBlazor Docs</a> Used to disable the associated user interface. default false <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#disabled”>ArcGIS Maps SDK for JavaScript</a>
public System.Nullable<bool> Disabled { get; set; }
Property Value
System.Nullable<System.Boolean>
FeatureTemplatesViewModel.FilterFunction Property
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodelfilterfunction-property”>GeoBlazor Docs</a><a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates.html#FilterFunction”>Function</a> can be defined to help filter <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-TemplateItem.html”>template items</a> within the widget. <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#filterFunction”>ArcGIS Maps SDK for JavaScript</a>
public dymaptic.GeoBlazor.Core.Functions.FilterFunction? FilterFunction { get; set; }
Property Value
dymaptic.GeoBlazor.Core.Functions.FilterFunction
FeatureTemplatesViewModel.GroupByFunctionGroupBy Property
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodelgroupbyfunctiongroupby-property”>GeoBlazor Docs</a> It is possible to group <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-TemplateItem.html”>template items</a>. default “layer” <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#groupBy”>ArcGIS Maps SDK for JavaScript</a>
public dymaptic.GeoBlazor.Core.Functions.GroupByFunction? GroupByFunctionGroupBy { get; set; }
Property Value
dymaptic.GeoBlazor.Core.Functions.GroupByFunction
FeatureTemplatesViewModel.HasFilterFunction Property
A convenience property that signifies whether a custom FilterFunction function was registered.
public bool HasFilterFunction { get; }
Property Value
FeatureTemplatesViewModel.HasGroupByFunctionGroupBy Property
A convenience property that signifies whether a custom GroupByFunctionGroupBy function was registered.
public bool HasGroupByFunctionGroupBy { get; }
Property Value
FeatureTemplatesViewModel.HasSelectListener Property
Used in JavaScript layer to determine if the event listener is registered.
public bool HasSelectListener { get; }
Property Value
FeatureTemplatesViewModel.Items Property
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodelitems-property”>GeoBlazor Docs</a> The template items or grouped template items. <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#items”>ArcGIS Maps SDK for JavaScript</a>
public System.Collections.Generic.IReadOnlyList<object>? Items { get; }
Property Value
System.Collections.Generic.IReadOnlyList<System.Object>
FeatureTemplatesViewModel.Layers Property
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodellayers-property”>GeoBlazor Docs</a> An array of <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-layers-FeatureLayer.html”>FeatureLayers</a> that are associated with the widget. <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#layers”>ArcGIS Maps SDK for JavaScript</a>
public System.Collections.Generic.IReadOnlyList<dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers>? Layers { get; set; }
Property Value
System.Collections.Generic.IReadOnlyList<dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers>
FeatureTemplatesViewModel.OnSelect Property
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodelonselect-property”>GeoBlazor Docs</a> Fires when a <a href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-TemplateItem.html”>template item</a> is selected. This occurs when the <a href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#select”>select</a> method is called.
public Microsoft.AspNetCore.Components.EventCallback<dymaptic.GeoBlazor.Pro.Events.FeatureTemplatesViewModelSelectEvent> OnSelect { get; set; }
Property Value
Microsoft.AspNetCore.Components.EventCallback<FeatureTemplatesViewModelSelectEvent>
FeatureTemplatesViewModel.State Property
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodelstate-property”>GeoBlazor Docs</a> The widget’s state. default “disabled” <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#state”>ArcGIS Maps SDK for JavaScript</a>
public System.Nullable<dymaptic.GeoBlazor.Core.Enums.ViewModelState> State { get; }
Property Value
System.Nullable<dymaptic.GeoBlazor.Core.Enums.ViewModelState>
FeatureTemplatesViewModel.StringGroupBy Property
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodelstringgroupby-property”>GeoBlazor Docs</a> It is possible to group <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-TemplateItem.html”>template items</a>. default “layer” <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#groupBy”>ArcGIS Maps SDK for JavaScript</a>
public string? StringGroupBy { get; set; }
Property Value
Methods
FeatureTemplatesViewModel.AddToLayers(IFeatureTemplatesViewModelLayers[]) Method
Asynchronously adds elements to the Layers property.
public System.Threading.Tasks.Task AddToLayers(params dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers[] values);
Parameters
values
dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers[]
The elements to add.
Returns
FeatureTemplatesViewModel.GetDisabled() Method
Asynchronously retrieve the current value of the Disabled property.
public System.Threading.Tasks.Task<System.Nullable<bool>> GetDisabled();
Returns
System.Threading.Tasks.Task<System.Nullable<System.Boolean>>
FeatureTemplatesViewModel.GetItems() Method
Asynchronously retrieve the current value of the Items property.
public System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyList<object>?> GetItems();
Returns
System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyList<System.Object>>
FeatureTemplatesViewModel.GetLayers() Method
Asynchronously retrieve the current value of the Layers property.
public System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyList<dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers>?> GetLayers();
Returns
System.Threading.Tasks.Task<System.Collections.Generic.IReadOnlyList<dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers>>
FeatureTemplatesViewModel.GetState() Method
Asynchronously retrieve the current value of the State property.
public System.Threading.Tasks.Task<System.Nullable<dymaptic.GeoBlazor.Core.Enums.ViewModelState>> GetState();
Returns
System.Threading.Tasks.Task<System.Nullable<dymaptic.GeoBlazor.Core.Enums.ViewModelState>>
FeatureTemplatesViewModel.GetStringGroupBy() Method
Asynchronously retrieve the current value of the StringGroupBy property.
public System.Threading.Tasks.Task<string?> GetStringGroupBy();
Returns
System.Threading.Tasks.Task<System.String>
FeatureTemplatesViewModel.OnJsSelect(IJSStreamReference) Method
JavaScript-Invokable Method for internal use only.
public System.Threading.Tasks.Task OnJsSelect(Microsoft.JSInterop.IJSStreamReference jsStreamRef);
Parameters
jsStreamRef
Microsoft.JSInterop.IJSStreamReference
Returns
FeatureTemplatesViewModel.Refresh() Method
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodelrefresh-method”>GeoBlazor Docs</a> This method updates the <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-TemplateItem.html”>template items</a> with the provided filter. <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#refresh”>ArcGIS Maps SDK for JavaScript</a>
public override System.Threading.Tasks.ValueTask Refresh();
Returns
System.Threading.Tasks.ValueTask
FeatureTemplatesViewModel.RemoveFromLayers(IFeatureTemplatesViewModelLayers[]) Method
Asynchronously remove an element from the Layers property.
public System.Threading.Tasks.Task RemoveFromLayers(params dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers[] values);
Parameters
values
dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers[]
The elements to remove.
Returns
FeatureTemplatesViewModel.Select(TemplateItem) Method
<a target=”_blank” href=”https://docs.geoblazor.com/pages/classes/dymaptic.GeoBlazor.Pro.Components.FeatureTemplatesViewModel.html#featuretemplatesviewmodelselect-method”>GeoBlazor Docs</a> Selects the <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-TemplateItem.html”>template item</a> to use. <a target=”_blank” href=”https://developers.arcgis.com/javascript/latest/api-reference/esri-widgets-FeatureTemplates-FeatureTemplatesViewModel.html#select”>ArcGIS Maps SDK for JavaScript</a>
public System.Threading.Tasks.Task Select(dymaptic.GeoBlazor.Pro.Model.TemplateItem item);
Parameters
item
TemplateItem
The esri/widgets/FeatureTemplates/TemplateItem template item to select.
Returns
FeatureTemplatesViewModel.SetDisabled(Nullable<bool>) Method
Asynchronously set the value of the Disabled property after render.
public System.Threading.Tasks.Task SetDisabled(System.Nullable<bool> value);
Parameters
value
System.Nullable<System.Boolean>
The value to set.
Returns
FeatureTemplatesViewModel.SetLayers(IReadOnlyList<IFeatureTemplatesViewModelLayers>) Method
Asynchronously set the value of the Layers property after render.
public System.Threading.Tasks.Task SetLayers(System.Collections.Generic.IReadOnlyList<dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers>? value);
Parameters
value
System.Collections.Generic.IReadOnlyList<dymaptic.GeoBlazor.Core.Interfaces.IFeatureTemplatesViewModelLayers>
The value to set.
Returns
FeatureTemplatesViewModel.SetStringGroupBy(string) Method
Asynchronously set the value of the StringGroupBy property after render.
public System.Threading.Tasks.Task SetStringGroupBy(string? value);
Parameters
value
System.String
The value to set.
Returns
FeatureTemplatesViewModel.ValidateRequiredGeneratedChildren() Method
Validates source-generated child components.
public override void ValidateRequiredGeneratedChildren();
Implements ValidateRequiredGeneratedChildren()