Skip to main content

TraceViewer

Family: Data & Inspection
Namespace: Tessera.Controls

Use TraceViewer when this interaction is the best match for your screen workflow.

When to use

  • You need a TraceViewer-style interaction inside the data & inspection lane.
  • A titled widget surface improves scanability in dense shells.
  • You want explicit user-driven events routed into app state updates.

Minimal usage

csharp.cs
using Tessera.Controls;
using Tessera.Layout;

var widget = new TraceViewer
{
    Title = "TraceViewer"
};

return Screen.Build(window => window.Body(body => body.Center(widget, width: 44, height: 9)));

Common pitfalls

  • Do not choose TraceViewer by name only; validate it against the target workflow.
  • Keep this control scoped to the data & inspection concern; avoid cross-layer state coupling.
  • Handle control events by posting/processing messages; avoid hidden mutation in render paths.
  • Set focused/normal styles intentionally so keyboard focus remains obvious.
  • Keep disabled state explicit and reversible so users understand why actions are blocked.

Public properties

PropertyType
BorderBorderStyle
BorderStyleTextTesseraStyle
CriticalRowStyleTesseraStyle
DisabledStyleTesseraStyle
EmptyTextstring
EmptyTextStyleTesseraStyle
EntryStyleTesseraStyle
ErrorRowStyleTesseraStyle
FocusedBorderStyleTextTesseraStyle
FocusedSelectedRowStyleTesseraStyle
FocusedTitleStyleTesseraStyle
FocusMarkerstring
HoveredRowStyleTesseraStyle
InfoRowStyleTesseraStyle
IsDisabledbool
IsFocusedbool
IsReadOnlybool
MutedRowStyleTesseraStyle
PaddingThickness
PageSizeint
SelectedMarkerstring
SelectedRowStyleTesseraStyle
ShowDurationbool
ShowFocusMarkerbool
TimeFormatstring
Titlestring
TitleStyleTesseraStyle
UnselectedMarkerstring
VerboseRowStyleTesseraStyle
WarningRowStyleTesseraStyle

Public events

EventType
SelectionChangedEventHandler<TraceSelectionChangedEventArgs>?