Project

ChartForgeX

Render deterministic charts, dashboards, topology, hierarchy, and report visuals directly from .NET.

Stars 47
Forks 2
NuGet downloads 75,067
Release ChartForgeX-v2.0.0
Language: HTML Updated: 2026-10-12

API Reference

Class

MetricCard

Namespace ChartForgeX.VisualBlocks
Assembly ChartForgeX.Visuals
Base FactualVisualBlock<MetricCard>
Implements
IVisualBlock IStaticVisualSource IFactualVisualPixels
Modifiers sealed

A compact KPI or metric card visual block.

Inheritance

  • FactualVisualBlock<MetricCard>
  • MetricCard

Usage

Explore 30 API references to this type

This type appears in these public API surfaces even when no hand-authored example is attached directly to the page.

Accepted by parameters 1

Constructors

public MetricCard() #

Methods

public MetricCard AddDetail(String label, Object? value, VisualStatus status = Neutral, String? format = null) #
Returns: MetricCard

Adds a compact detail row to the card.

Parameters

label System.String requiredposition: 0
value System.Object? requiredposition: 1
status ChartForgeX.VisualBlocks.VisualStatus = Neutral optionalposition: 2
format System.String? = null optionalposition: 3
public static MetricCard Create() #
Returns: MetricCard

Creates a new metric card.

public MetricCard WithBadgePlacement(MetricCardBadgePlacement placement) #
Returns: MetricCard

Sets the badge placement when an icon or symbol is configured.

Parameters

placement ChartForgeX.VisualBlocks.MetricCardBadgePlacement requiredposition: 0
public MetricCard WithCaption(String caption) #
Returns: MetricCard

Sets optional supporting text.

Parameters

caption System.String requiredposition: 0
public MetricCard WithIcon(VisualIcon icon) #
Returns: MetricCard

Sets an optional built-in icon rendered as a badge.

Parameters

icon ChartForgeX.VisualBlocks.VisualIcon requiredposition: 0
WithMetric 2 overloads
public MetricCard WithMetric(String label, Object? value, String? format = null, String? unit = null) #
Returns: MetricCard

Sets the primary metric label and value.

Parameters

label System.String requiredposition: 0
value System.Object? requiredposition: 1
format System.String? = null optionalposition: 2
unit System.String? = null optionalposition: 3
public MetricCard WithMetric(String label, Double value, ChartValueFormat format, String? unit = null) #
Returns: MetricCard

Sets a numeric metric using the same display policy as chart labels and axes.

Parameters

label System.String requiredposition: 0
value System.Double requiredposition: 1
format ChartForgeX.Core.ChartValueFormat requiredposition: 2
unit System.String? = null optionalposition: 3
public MetricCard WithMicroVisualPlacement(MetricCardMicroVisualPlacement placement) #
Returns: MetricCard

Sets where compact mini charts are rendered inside the metric card.

Parameters

placement ChartForgeX.VisualBlocks.MetricCardMicroVisualPlacement requiredposition: 0
public MetricCard WithMicroVisualSurface(MetricCardMicroVisualSurface surface) #
Returns: MetricCard

Sets the optional surface treatment for compact mini visuals.

Parameters

surface ChartForgeX.VisualBlocks.MetricCardMicroVisualSurface requiredposition: 0
public MetricCard WithMiniBars(IEnumerable<Double> values, Double? minimum = null, Double? maximum = null, ChartColor? color = null, ChartColor? mutedColor = null, Int32? highlightIndex = null) #
Returns: MetricCard

Replaces compact bar values rendered inside the metric card.

Parameters

values System.Collections.Generic.IEnumerable<System.Double> requiredposition: 0
minimum System.Double? = null optionalposition: 1
maximum System.Double? = null optionalposition: 2
color ChartForgeX.Primitives.ChartColor? = null optionalposition: 3
mutedColor ChartForgeX.Primitives.ChartColor? = null optionalposition: 4
highlightIndex System.Int32? = null optionalposition: 5
public MetricCard WithMiniSparkline(IEnumerable<Double> values, Double? minimum = null, Double? maximum = null, ChartColor? color = null, ChartColor? fillColor = null) #
Returns: MetricCard

Replaces compact sparkline values rendered inside the metric card.

Parameters

values System.Collections.Generic.IEnumerable<System.Double> requiredposition: 0
minimum System.Double? = null optionalposition: 1
maximum System.Double? = null optionalposition: 2
color ChartForgeX.Primitives.ChartColor? = null optionalposition: 3
fillColor ChartForgeX.Primitives.ChartColor? = null optionalposition: 4
public MetricCard WithMiniSparklineStyle(ChartLineAreaForm style) #
Returns: MetricCard

Sets the mini sparkline presentation style.

Parameters

style ChartForgeX.Core.ChartLineAreaForm requiredposition: 0
public MetricCard WithoutMiniBars() #
Returns: MetricCard

Clears compact bar values from the metric card.

public MetricCard WithoutMiniSparkline() #
Returns: MetricCard

Clears compact sparkline values from the metric card.

public MetricCard WithSecondaryMiniSparkline(IEnumerable<Double> values, ChartColor? color = null) #
Returns: MetricCard

Replaces optional secondary sparkline values rendered with the primary sparkline.

Parameters

values System.Collections.Generic.IEnumerable<System.Double> requiredposition: 0
color ChartForgeX.Primitives.ChartColor? = null optionalposition: 1
public MetricCard WithSecondarySparkline(SparklineData data, ChartColor? color = null) #
Returns: MetricCard

Sets secondary samples. Bounds belong to the primary sparkline and are shared by both series.

Parameters

data ChartForgeX.Core.SparklineData requiredposition: 0
color ChartForgeX.Primitives.ChartColor? = null optionalposition: 1
public MetricCard WithSparkline(SparklineData data, ChartColor? color = null, ChartColor? fillColor = null) #
Returns: MetricCard

Sets shared sparkline samples, retaining missing slots, zeroes and the requested domain.

Parameters

data ChartForgeX.Core.SparklineData requiredposition: 0
color ChartForgeX.Primitives.ChartColor? = null optionalposition: 1
fillColor ChartForgeX.Primitives.ChartColor? = null optionalposition: 2
public MetricCard WithStatus(VisualStatus status) #
Returns: MetricCard

Sets the metric status.

Parameters

status ChartForgeX.VisualBlocks.VisualStatus requiredposition: 0
public MetricCard WithSymbol(String symbol) #
Returns: MetricCard

Sets an optional compact symbol rendered as a badge.

Parameters

symbol System.String requiredposition: 0
public MetricCard WithTrend(String trend) #
Returns: MetricCard

Sets optional trend text.

Parameters

trend System.String requiredposition: 0
public MetricCard WithUnit(String unit) #
Returns: MetricCard

Sets an optional metric unit rendered beside the value.

Parameters

unit System.String requiredposition: 0

Properties

public IReadOnlyList<Double> MiniBars { get; } #

Gets compact bar values rendered inside the metric card.

public IReadOnlyList<Double> MiniSparkline { get; } #

Gets compact sparkline values rendered inside the metric card.

public IReadOnlyList<Double> SecondaryMiniSparkline { get; } #

Gets optional secondary sparkline values rendered beside the primary sparkline.

public IReadOnlyList<MetricCardDetail> Details { get; } #

Gets compact supporting detail rows rendered inside the card.

public String Label { get; set; } #

Gets or sets the metric label.

public String Value { get; set; } #

Gets or sets the metric value.

public String Unit { get; set; } #

Gets or sets an optional metric unit rendered beside the value.

public String Caption { get; set; } #

Gets or sets optional supporting text.

public String Trend { get; set; } #

Gets or sets optional trend text.

public String Symbol { get; set; } #

Gets or sets an optional compact symbol rendered as a badge.

public Int32? MiniBarHighlightIndex { get; set; } #

Gets or sets the zero-based mini bar to emphasize. When unset, the last mini bar is emphasized.

public Double? MiniBarMinimum { get; set; } #

Gets or sets the optional lower bound used for mini bar scaling.

public Double? MiniBarMaximum { get; set; } #

Gets or sets the optional upper bound used for mini bar scaling.

public Double? MiniSparklineMinimum { get; set; } #

Gets or sets the optional lower bound used for mini sparkline scaling.

public Double? MiniSparklineMaximum { get; set; } #

Gets or sets the optional upper bound used for mini sparkline scaling.

public ChartColor? MiniBarColor { get; set; } #

Gets or sets the optional color for the emphasized mini bar.

public ChartColor? MiniBarMutedColor { get; set; } #

Gets or sets the optional color for non-emphasized mini bars.

public ChartColor? MiniSparklineColor { get; set; } #

Gets or sets the optional stroke color for the mini sparkline.

public ChartColor? MiniSparklineFillColor { get; set; } #

Gets or sets the optional fill color under the mini sparkline.

public ChartColor? SecondaryMiniSparklineColor { get; set; } #

Gets or sets the optional stroke color for the secondary mini sparkline.

public ChartLineAreaForm MiniSparklineStyle { get; set; } #

Gets or sets the mini sparkline presentation style.

public VisualIcon Icon { get; set; } #

Gets or sets an optional built-in icon rendered as a badge.

public VisualStatus Status { get; set; } #

Gets or sets the metric status.

public MetricCardBadgePlacement BadgePlacement { get; set; } #

Gets or sets the badge placement when an icon or symbol is configured.

public MetricCardMicroVisualPlacement MicroVisualPlacement { get; set; } #

Gets or sets where compact mini charts are rendered inside the metric card.

public MetricCardMicroVisualSurface MicroVisualSurface { get; set; } #

Gets or sets the optional surface treatment for the mini visual.

public override String AccessibleName { get; } #

Gets a concise accessibility label.

public SparklineData? SparklineData { get; private set; } #

Gets configured sample slots; null indicates the finite-value convenience API is in use.

public SparklineData? SecondarySparklineData { get; private set; } #

Gets configured secondary sample slots, which share the primary display domain.