gum-forms-itemscontrol

Diagnose and organize Items and ListBoxItems synchronization in Gum forms.

597|79|Updated Mar 11, 2015
One-click install
npx skills add https://github.com/vchelaru/Gum --skill gum-forms-itemscontrol
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: gum-forms-itemscontrol
Source: https://github.com/vchelaru/Gum/tree/main/.claude/skills/gum-forms-itemscontrol
Command: npx skills add https://github.com/vchelaru/Gum --skill gum-forms-itemscontrol

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This reference guide clarifies how Gum's ItemsControl and ListBox manage item data, visuals, and synchronization, helping developers diagnose and fix desync issues between logical Items collections and their visual ListBoxItems.

Core Features & Use Cases

  • Explains the relationship between Items and ListBoxItems, including how data objects, FrameworkElements, and templates map to visuals.
  • Documents common desync gotchas, selection handling, and template usage to ensure consistent UI behavior.
  • Provides practical guidance for building robust list controls in Gum forms, including edge cases like pre-filled lists and dynamic updates.

Quick Start

Inspect how Items trigger visuals and how ListBoxItems stay in sync during updates.

Frequently Asked Questions about gum-forms-itemscontrol

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
Why does my Gum ListBox desync from its logical Items collection during dynamic updates?

Gum ListBox desync happens when logical Items and visual ListBoxItems lose synchronization during dynamic updates. This guide diagnoses VisualTemplate binding and selection synchronization issues to restore consistent UI behavior.

How do VisualTemplates and FrameworkElementTemplates map data to visuals in Gum forms?

VisualTemplates and FrameworkElementTemplates govern visual creation and data binding in Gum forms. They define how data objects map to visuals within ItemsControl, ensuring proper rendering and consistent synchronization across list updates.

What is the difference between Items and ListBoxItems when building list controls in Gum?

Items represent the logical data collection, while ListBoxItems are the generated visual elements in Gum. Understanding this relationship is crucial for troubleshooting template creation, binding, and selection synchronization issues.

How to troubleshoot selection handling issues in a Gum ItemsControl?

Troubleshoot Gum ItemsControl selection issues by inspecting how ListBoxItems stay in sync with logical Items during updates. Verify that FrameworkElementTemplates correctly bind selection states to ensure consistent UI behavior.

Are there known edge cases when pre-filling a Gum ListBox with items?

Pre-filled lists in Gum can trigger desync edge cases if VisualTemplates and FrameworkElementTemplates do not properly map initial data to ListBoxItems. This guide documents these gotchas to ensure robust list control behavior.