瀏覽代碼

add abstract, winform, webform, avalonia default definitions

Dalibor Votruba 11 月之前
父節點
當前提交
16d64538cb

+ 429 - 0
UILayoutDefinitionFormat/Definitions/abstract-controls.xml

@@ -0,0 +1,429 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Abstract Control Definitions for UI Layout Definition Format -->
+<patterns xmlns="ui-layout-patterns">
+  
+  <!-- Base abstract control with common attributes -->
+  <control name="CommonControl" type="base" category="abstract">
+    <description>Base abstract control defining common attributes for all controls</description>
+    <constraints>
+      <allowed-parents>any</allowed-parents>
+      <allowed-children>depends-on-implementation</allowed-children>
+      <container>depends-on-implementation</container>
+    </constraints>
+    <attributes>
+      <attribute name="name" type="string" required="true" />
+      <attribute name="enabled" type="bool" default="true" />
+      <attribute name="text" type="string" default="" />
+      <attribute name="visible" type="bool" default="true" />
+      <attribute name="data-source" type="string" default="" />
+      <attribute name="dock" type="enum" values="none,left,right,top,bottom" default="none" />
+      <attribute name="tooltip" type="string" default="" />
+    </attributes>
+  </control>
+  
+  <!-- Label Control -->
+  <control name="Label" type="display" category="basic" inherits="CommonControl">
+    <description>Display text label control</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,StatusBar,ToolBar,FormField</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="font-size" type="int" default="12" min="8" max="72" />
+      <attribute name="font-weight" type="enum" values="normal,bold" default="normal" />
+      <attribute name="color" type="color" default="#000000" />
+      <attribute name="alignment" type="enum" values="left,center,right" default="left" />
+    </attributes>
+  </control>
+  
+  <!-- TextBox Control -->
+  <control name="TextBox" type="input" category="basic" inherits="CommonControl">
+    <description>Text input control for single or multi-line text</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,FormField</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="placeholder" type="string" default="" />
+      <attribute name="max-length" type="int" default="255" min="1" max="10000" />
+      <attribute name="readonly" type="bool" default="false" />
+      <attribute name="multiline" type="bool" default="false" />
+      <attribute name="password" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="text-changed" />
+      <event name="focus" />
+      <event name="blur" />
+      <event name="enter-pressed" />
+    </behavior>
+  </control>
+  
+  <!-- ListBoxItem Structure -->
+  <structure name="ListBoxItem" type="data-item" category="basic">
+    <description>Individual item within list-based controls</description>
+    <attributes>
+      <attribute name="value" type="string" required="true" />
+      <attribute name="text" type="string" required="true" />
+      <attribute name="selected" type="bool" default="false" />
+      <attribute name="enabled" type="bool" default="true" />
+      <attribute name="image" type="string" default="" />
+    </attributes>
+  </structure>
+  
+  <!-- ComboBox Control -->
+  <control name="ComboBox" type="input" category="basic" inherits="CommonControl">
+    <description>Dropdown selection control with editable option</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,StatusBar,ToolBar,FormField</allowed-parents>
+      <allowed-children>items</allowed-children>
+      <container>false</container>
+      <requires-structure>items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="selected-value" type="string" default="" />
+      <attribute name="editable" type="bool" default="false" />
+      <attribute name="dropdown-height" type="int" default="200" min="100" max="500" />
+    </attributes>
+    <behavior>
+      <event name="selection-changed" alias="on-select" />
+      <event name="text-changed" />
+    </behavior>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <listbox-item inherits="ListBoxItem" />
+      </items>
+      <selected-items max-count="1" />
+    </structure>
+  </control>
+  
+  <!-- ListBox Control -->
+  <control name="ListBox" type="input" category="basic" inherits="CommonControl">
+    <description>List selection control with single or multiple selection</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,FormField</allowed-parents>
+      <allowed-children>items,context-menu</allowed-children>
+      <container>false</container>
+      <requires-structure>items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="multi-select" type="bool" default="false" />
+      <attribute name="selection-mode" type="enum" values="single,multiple,extended" default="single" />
+      <attribute name="sorted" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="selection-changed" alias="on-select" />
+      <event name="double-click" />
+    </behavior>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <listbox-item inherits="ListBoxItem" />
+      </items>
+      <selected-items max-count="depends-on-multi-select" />
+      <context-menu max-count="1" />
+    </structure>
+  </control>
+  
+  <!-- ColumnItem Structure -->
+  <structure name="ColumnItem" type="data-item" category="basic">
+    <description>Column definition for ListView control</description>
+    <attributes>
+      <attribute name="name" type="string" required="true" />
+      <attribute name="text" type="string" required="true" />
+      <attribute name="width" type="int" default="100" min="20" max="500" />
+      <attribute name="sortable" type="bool" default="true" />
+      <attribute name="visible" type="bool" default="true" />
+      <attribute name="alignment" type="enum" values="left,center,right" default="left" />
+      <attribute name="data-type" type="enum" values="text,number,date,boolean" default="text" />
+    </attributes>
+  </structure>
+  
+  <!-- ListView Control -->
+  <control name="ListView" type="data" category="basic" inherits="CommonControl">
+    <description>List view control with columns and detailed item display</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,FormField</allowed-parents>
+      <allowed-children>columns,items,context-menu</allowed-children>
+      <container>false</container>
+      <requires-structure>columns,items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="view-mode" type="enum" values="list,details,icons,tiles" default="details" />
+      <attribute name="multi-select" type="bool" default="false" />
+      <attribute name="grid-lines" type="bool" default="true" />
+      <attribute name="full-row-select" type="bool" default="true" />
+      <attribute name="sort-column" type="string" default="" />
+      <attribute name="sort-direction" type="enum" values="asc,desc" default="asc" />
+    </attributes>
+    <behavior>
+      <event name="selection-changed" alias="on-select" />
+      <event name="item-double-click" />
+      <event name="column-click" />
+    </behavior>
+    <structure>
+      <columns min-count="1" max-count="20">
+        <column-item inherits="ColumnItem" />
+      </columns>
+      <items min-count="0" max-count="unlimited">
+        <listview-item>
+          <values>
+            <value column="" text="" />
+          </values>
+        </listview-item>
+      </items>
+      <selected-items max-count="depends-on-multi-select" />
+      <context-menu max-count="1" />
+    </structure>
+  </control>
+  
+  <!-- TreeViewItem Structure -->
+  <structure name="TreeViewItem" type="data-item" category="basic">
+    <description>Node item within TreeView control</description>
+    <attributes>
+      <attribute name="text" type="string" required="true" />
+      <attribute name="value" type="string" required="true" />
+      <attribute name="expanded" type="bool" default="false" />
+      <attribute name="selected" type="bool" default="false" />
+      <attribute name="checked" type="bool" default="false" />
+      <attribute name="image" type="string" default="" />
+      <attribute name="enabled" type="bool" default="true" />
+    </attributes>
+    <structure>
+      <children min-count="0" max-count="unlimited" max-depth="10">
+        <tree-view-item inherits="TreeViewItem" />
+      </children>
+    </structure>
+  </structure>
+  
+  <!-- TreeView Control -->
+  <control name="TreeView" type="data" category="basic" inherits="CommonControl">
+    <description>Hierarchical tree view control with expandable nodes</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,FormField</allowed-parents>
+      <allowed-children>items</allowed-children>
+      <container>false</container>
+      <requires-structure>items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="show-lines" type="bool" default="true" />
+      <attribute name="show-root-lines" type="bool" default="true" />
+      <attribute name="show-plus-minus" type="bool" default="true" />
+      <attribute name="checkboxes" type="bool" default="false" />
+      <attribute name="full-row-select" type="bool" default="false" />
+      <attribute name="hottracking" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="node-selected" />
+      <event name="node-expanded" />
+      <event name="node-collapsed" />
+      <event name="node-checked" />
+      <event name="node-double-click" />
+    </behavior>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <tree-view-item inherits="TreeViewItem" />
+      </items>
+    </structure>
+  </control>
+  
+  <!-- Panel Control -->
+  <control name="Panel" type="container" category="layout" inherits="CommonControl">
+    <description>Container panel for organizing other controls</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,window,wireframe-instance</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+      <max-children>unlimited</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="border" type="bool" default="false" />
+      <attribute name="border-style" type="enum" values="none,solid,raised,sunken" default="none" />
+      <attribute name="background-color" type="color" default="transparent" />
+      <attribute name="padding" type="int" default="0" min="0" max="50" />
+      <attribute name="margin" type="int" default="0" min="0" max="50" />
+      <attribute name="orientation" type="enum" values="horizontal,vertical" default="vertical" />
+      <attribute name="alignment" type="enum" values="left,center,right,stretch" default="left" />
+      <attribute name="auto-scroll" type="bool" default="false" />
+      <attribute name="width" type="int" min="10" max="2000" />
+      <attribute name="height" type="int" min="10" max="2000" />
+    </attributes>
+    <structure>
+      <children allow-multiple="true" />
+    </structure>
+  </control>
+  
+  <!-- SplitPanel Control -->
+  <control name="SplitPanel" type="container" category="layout" inherits="CommonControl">
+    <description>Splitter container with two resizable panels</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,window,wireframe-instance</allowed-parents>
+      <allowed-children>panel1,panel2</allowed-children>
+      <container>true</container>
+      <max-children>2</max-children>
+      <requires-structure>panel1,panel2</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="orientation" type="enum" values="horizontal,vertical" default="vertical" />
+      <attribute name="splitter-distance" type="int" default="50" min="10" max="90" />
+      <attribute name="splitter-width" type="int" default="4" min="2" max="10" />
+      <attribute name="fixed-panel" type="enum" values="none,panel1,panel2" default="none" />
+      <attribute name="border" type="bool" default="true" />
+    </attributes>
+    <behavior>
+      <event name="splitter-moved" />
+    </behavior>
+    <structure>
+      <panel1 required="true">
+        <children allow-multiple="true" />
+      </panel1>
+      <panel2 required="true">
+        <children allow-multiple="true" />
+      </panel2>
+    </structure>
+  </control>
+  
+  <!-- MenuItem Structure -->
+  <structure name="MenuItem" type="menu-item" category="navigation">
+    <description>Individual menu item within Menu control</description>
+    <attributes>
+      <attribute name="text" type="string" required="true" />
+      <attribute name="value" type="string" default="" />
+      <attribute name="enabled" type="bool" default="true" />
+      <attribute name="visible" type="bool" default="true" />
+      <attribute name="checked" type="bool" default="false" />
+      <attribute name="separator" type="bool" default="false" />
+      <attribute name="shortcut" type="string" default="" />
+      <attribute name="image" type="string" default="" />
+    </attributes>
+    <behavior>
+      <event name="click" alias="on-click" />
+    </behavior>
+    <structure>
+      <sub-items min-count="0" max-count="unlimited" max-depth="5">
+        <menu-item inherits="MenuItem" />
+      </sub-items>
+    </structure>
+  </structure>
+  
+  <!-- Menu Control -->
+  <control name="Menu" type="navigation" category="navigation" inherits="CommonControl">
+    <description>Menu control with hierarchical menu items</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,ToolBar,window</allowed-parents>
+      <allowed-children>items</allowed-children>
+      <container>false</container>
+      <requires-structure>items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="orientation" type="enum" values="horizontal,vertical" default="horizontal" />
+      <attribute name="show-images" type="bool" default="true" />
+      <attribute name="show-shortcuts" type="bool" default="true" />
+    </attributes>
+    <structure>
+      <items min-count="1" max-count="unlimited">
+        <menu-item inherits="MenuItem" />
+      </items>
+    </structure>
+  </control>
+  
+  <!-- Button Control -->
+  <control name="Button" type="action" category="basic" inherits="CommonControl">
+    <description>Clickable button control with text and/or image</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,StatusBar,ToolBar,FormField,ButtonBar</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="type" type="enum" values="text,image,text-image" default="text" />
+      <attribute name="image" type="string" default="" />
+      <attribute name="image-position" type="enum" values="left,right,top,bottom" default="left" />
+      <attribute name="style" type="enum" values="normal,primary,secondary,danger,borderless" default="normal" />
+      <attribute name="auto-size" type="bool" default="false" />
+      <attribute name="width" type="int" min="20" max="300" />
+      <attribute name="height" type="int" min="20" max="100" />
+    </attributes>
+    <behavior>
+      <event name="click" alias="on-click" required="true" />
+      <event name="mouse-enter" />
+      <event name="mouse-leave" />
+    </behavior>
+  </control>
+  
+  <!-- Image Control -->
+  <control name="Image" type="display" category="basic" inherits="CommonControl">
+    <description>Image display control</description>
+    <constraints>
+      <allowed-parents>Panel,SplitPanel,StatusBar,ToolBar,Button</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="resource" type="string" required="true" />
+      <attribute name="size-mode" type="enum" values="normal,stretch,zoom,center,auto-size" default="normal" />
+      <attribute name="border" type="bool" default="false" />
+      <attribute name="background-color" type="color" default="transparent" />
+      <attribute name="width" type="int" min="10" max="1000" />
+      <attribute name="height" type="int" min="10" max="1000" />
+    </attributes>
+    <behavior>
+      <event name="click" />
+      <event name="double-click" />
+    </behavior>
+  </control>
+  
+  <!-- StatusBar Control -->
+  <control name="StatusBar" type="container" category="layout" inherits="CommonControl">
+    <description>Status bar container for displaying status information</description>
+    <constraints>
+      <allowed-parents>Panel,window</allowed-parents>
+      <allowed-children>items,context-menu</allowed-children>
+      <container>true</container>
+      <max-children>unlimited</max-children>
+      <requires-structure>items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="show-panels" type="bool" default="true" />
+      <attribute name="sizing-grip" type="bool" default="true" />
+      <attribute name="height" type="int" default="22" min="16" max="50" />
+    </attributes>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <status-item>
+          <control-ref allowed-types="Label,Image,ComboBox,Button" />
+        </status-item>
+      </items>
+      <context-menu max-count="1" />
+    </structure>
+  </control>
+  
+  <!-- ToolBar Control -->
+  <control name="ToolBar" type="container" category="layout" inherits="CommonControl">
+    <description>Toolbar container for quick access to commands</description>
+    <constraints>
+      <allowed-parents>Panel,window</allowed-parents>
+      <allowed-children>items,context-menu</allowed-children>
+      <container>true</container>
+      <max-children>unlimited</max-children>
+      <requires-structure>items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="orientation" type="enum" values="horizontal,vertical" default="horizontal" />
+      <attribute name="appearance" type="enum" values="normal,flat,system" default="normal" />
+      <attribute name="show-tooltips" type="bool" default="true" />
+      <attribute name="divider" type="bool" default="true" />
+      <attribute name="wrappable" type="bool" default="false" />
+      <attribute name="button-size" type="enum" values="small,medium,large" default="medium" />
+    </attributes>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <toolbar-item>
+          <control-ref allowed-types="Label,Image,ComboBox,Button,Menu" />
+        </toolbar-item>
+      </items>
+      <context-menu max-count="1" />
+    </structure>
+  </control>
+  
+</patterns>

+ 999 - 0
UILayoutDefinitionFormat/Definitions/avalonia-controls.xml

@@ -0,0 +1,999 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Avalonia UI Controls Definition for UI Layout Definition Format -->
+<patterns xmlns="ui-layout-patterns">
+  
+  <!-- Base Avalonia Controls -->
+  
+  <!-- Content Controls -->
+  <control name="AvaloniaButton" type="action" category="avalonia-specific" inherits="Button">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas,WrapPanel,UniformGrid</allowed-parents>
+      <allowed-children>any-content</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="click-mode" type="enum" values="Release,Press,Hover" default="Release" />
+      <attribute name="is-default" type="bool" default="false" />
+      <attribute name="is-cancel" type="bool" default="false" />
+      <attribute name="hotkey" type="string" default="" />
+      <attribute name="command" type="string" default="" />
+      <attribute name="command-parameter" type="object" default="null" />
+    </attributes>
+    <behavior>
+      <event name="click" required="true" />
+      <event name="command-changed" />
+    </behavior>
+  </control>
+  
+  <control name="RepeatButton" type="action" category="avalonia-specific">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>any-content</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="delay" type="int" default="500" min="0" max="5000" />
+      <attribute name="interval" type="int" default="33" min="1" max="1000" />
+    </attributes>
+    <behavior>
+      <event name="click" required="true" />
+    </behavior>
+  </control>
+  
+  <!-- Layout Panels -->
+  <control name="StackPanel" type="container" category="avalonia-layout">
+    <constraints>
+      <allowed-parents>Panel,Grid,DockPanel,Canvas,ScrollViewer,Border</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="orientation" type="enum" values="Horizontal,Vertical" default="Vertical" />
+      <attribute name="spacing" type="double" default="0" min="0" max="100" />
+    </attributes>
+  </control>
+  
+  <control name="Grid" type="container" category="avalonia-layout">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,DockPanel,Canvas,ScrollViewer,Border</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+      <requires-structure>grid-definitions</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="show-grid-lines" type="bool" default="false" />
+    </attributes>
+    <structure>
+      <grid-definitions>
+        <row-definitions>
+          <row-definition height="*" min-height="0" max-height="Infinity" />
+        </row-definitions>
+        <column-definitions>
+          <column-definition width="*" min-width="0" max-width="Infinity" />
+        </column-definitions>
+      </grid-definitions>
+      <children>
+        <child grid-row="0" grid-column="0" grid-row-span="1" grid-column-span="1" />
+      </children>
+    </structure>
+  </control>
+  
+  <control name="DockPanel" type="container" category="avalonia-layout">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,Canvas,ScrollViewer,Border</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="last-child-fill" type="bool" default="true" />
+    </attributes>
+    <structure>
+      <children>
+        <child dock="Left,Top,Right,Bottom,None" />
+      </children>
+    </structure>
+  </control>
+  
+  <control name="WrapPanel" type="container" category="avalonia-layout">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="orientation" type="enum" values="Horizontal,Vertical" default="Horizontal" />
+      <attribute name="item-width" type="double" default="NaN" min="0" />
+      <attribute name="item-height" type="double" default="NaN" min="0" />
+    </attributes>
+  </control>
+  
+  <control name="Canvas" type="container" category="avalonia-layout">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,ScrollViewer</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="background" type="brush" default="Transparent" />
+    </attributes>
+    <structure>
+      <children>
+        <child canvas-left="0" canvas-top="0" canvas-right="NaN" canvas-bottom="NaN" />
+      </children>
+    </structure>
+  </control>
+  
+  <control name="UniformGrid" type="container" category="avalonia-layout">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="rows" type="int" default="0" min="0" max="100" />
+      <attribute name="columns" type="int" default="0" min="0" max="100" />
+      <attribute name="first-column" type="int" default="0" min="0" />
+    </attributes>
+  </control>
+  
+  <!-- Input Controls -->
+  <control name="AvaloniaTextBox" type="input" category="avalonia-input" inherits="TextBox">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="accepts-return" type="bool" default="false" />
+      <attribute name="accepts-tab" type="bool" default="false" />
+      <attribute name="caret-index" type="int" default="0" min="0" />
+      <attribute name="selection-start" type="int" default="0" min="0" />
+      <attribute name="selection-end" type="int" default="0" min="0" />
+      <attribute name="text-wrapping" type="enum" values="NoWrap,Wrap" default="NoWrap" />
+      <attribute name="watermark" type="string" default="" />
+      <attribute name="password-char" type="char" default="" />
+      <attribute name="reveal-password" type="bool" default="false" />
+      <attribute name="use-floating-watermark" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="text-changed" />
+      <event name="text-changing" />
+      <event name="selection-changed" />
+      <event name="copy" />
+      <event name="cut" />
+      <event name="paste" />
+    </behavior>
+  </control>
+  
+  <control name="NumericUpDown" type="input" category="avalonia-input">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="value" type="double" default="0" />
+      <attribute name="minimum" type="double" default="0" />
+      <attribute name="maximum" type="double" default="100" />
+      <attribute name="increment" type="double" default="1" />
+      <attribute name="format-string" type="string" default="F0" />
+      <attribute name="text" type="string" default="" />
+      <attribute name="watermark" type="string" default="" />
+      <attribute name="show-button-spinner" type="bool" default="true" />
+      <attribute name="allow-spin" type="bool" default="true" />
+      <attribute name="button-spinner-location" type="enum" values="Right,Left" default="Right" />
+    </attributes>
+    <behavior>
+      <event name="value-changed" />
+      <event name="spin" />
+    </behavior>
+  </control>
+  
+  <control name="AvaloniaComboBox" type="input" category="avalonia-input" inherits="ComboBox">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>ComboBoxItem</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="is-dropdown-open" type="bool" default="false" />
+      <attribute name="max-drop-down-height" type="double" default="200" min="0" />
+      <attribute name="placeholder-text" type="string" default="" />
+      <attribute name="placeholder-foreground" type="brush" default="Gray" />
+    </attributes>
+    <behavior>
+      <event name="dropdown-opened" />
+      <event name="dropdown-closed" />
+    </behavior>
+    <structure>
+      <items>
+        <ComboBoxItem content="" is-selected="false" />
+      </items>
+    </structure>
+  </control>
+  
+  <control name="AutoCompleteBox" type="input" category="avalonia-input">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="" />
+      <attribute name="search-text" type="string" default="" />
+      <attribute name="watermark" type="string" default="" />
+      <attribute name="minimum-prefix-length" type="int" default="1" min="0" max="10" />
+      <attribute name="minimum-populate-delay" type="int" default="0" min="0" max="5000" />
+      <attribute name="maximum-drop-down-height" type="double" default="600" min="0" />
+      <attribute name="is-drop-down-open" type="bool" default="false" />
+      <attribute name="filter-mode" type="enum" values="None,StartsWith,StartsWithCaseSensitive,StartsWithOrdinal,StartsWithOrdinalCaseSensitive,Contains,ContainsCaseSensitive,ContainsOrdinal,ContainsOrdinalCaseSensitive,Equals,EqualsCaseSensitive,EqualsOrdinal,EqualsOrdinalCaseSensitive,Custom" default="StartsWith" />
+    </attributes>
+    <behavior>
+      <event name="text-changed" />
+      <event name="populating" />
+      <event name="populated" />
+      <event name="dropdown-opening" />
+      <event name="dropdown-opened" />
+      <event name="dropdown-closing" />
+      <event name="dropdown-closed" />
+      <event name="selection-changed" />
+    </behavior>
+  </control>
+  
+  <control name="CheckBox" type="input" category="avalonia-input">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>any-content</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="is-checked" type="bool" default="false" />
+      <attribute name="is-three-state" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="checked" />
+      <event name="unchecked" />
+      <event name="indeterminate" />
+    </behavior>
+  </control>
+  
+  <control name="RadioButton" type="input" category="avalonia-input">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>any-content</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="is-checked" type="bool" default="false" />
+      <attribute name="group-name" type="string" default="" />
+    </attributes>
+    <behavior>
+      <event name="checked" />
+      <event name="unchecked" />
+    </behavior>
+  </control>
+  
+  <control name="Slider" type="input" category="avalonia-input">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="value" type="double" default="0" />
+      <attribute name="minimum" type="double" default="0" />
+      <attribute name="maximum" type="double" default="10" />
+      <attribute name="small-change" type="double" default="0.1" />
+      <attribute name="large-change" type="double" default="1" />
+      <attribute name="tick-frequency" type="double" default="0" />
+      <attribute name="tick-placement" type="enum" values="None,TopLeft,BottomRight,Both" default="None" />
+      <attribute name="is-snap-to-tick-enabled" type="bool" default="false" />
+      <attribute name="orientation" type="enum" values="Horizontal,Vertical" default="Horizontal" />
+    </attributes>
+    <behavior>
+      <event name="value-changed" />
+    </behavior>
+  </control>
+  
+  <control name="CalendarDatePicker" type="input" category="avalonia-input">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="selected-date" type="date" default="null" />
+      <attribute name="display-date" type="date" default="today" />
+      <attribute name="first-day-of-week" type="enum" values="Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday" default="Sunday" />
+      <attribute name="is-drop-down-open" type="bool" default="false" />
+      <attribute name="placeholder-text" type="string" default="" />
+      <attribute name="watermark" type="string" default="" />
+    </attributes>
+    <behavior>
+      <event name="selected-date-changed" />
+      <event name="calendar-opened" />
+      <event name="calendar-closed" />
+      <event name="date-validation-error" />
+    </behavior>
+  </control>
+  
+  <control name="TimePicker" type="input" category="avalonia-input">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="selected-time" type="timespan" default="null" />
+      <attribute name="minute-increment" type="int" default="1" min="1" max="30" />
+      <attribute name="clock-identifier" type="string" default="12HourClock" />
+    </attributes>
+    <behavior>
+      <event name="selected-time-changed" />
+    </behavior>
+  </control>
+  
+  <!-- Display Controls -->
+  <control name="AvaloniaLabel" type="display" category="avalonia-display" inherits="Label">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>any-content</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="target" type="string" default="" />
+    </attributes>
+  </control>
+  
+  <control name="TextBlock" type="display" category="avalonia-display">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas,ScrollViewer</allowed-parents>
+      <allowed-children>Inline</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="" />
+      <attribute name="font-family" type="string" default="Default" />
+      <attribute name="font-size" type="double" default="12" min="1" max="100" />
+      <attribute name="font-weight" type="enum" values="Thin,ExtraLight,Light,Normal,Medium,SemiBold,Bold,ExtraBold,Black,ExtraBlack" default="Normal" />
+      <attribute name="font-style" type="enum" values="Normal,Italic,Oblique" default="Normal" />
+      <attribute name="text-alignment" type="enum" values="Left,Center,Right,Justify" default="Left" />
+      <attribute name="text-wrapping" type="enum" values="NoWrap,Wrap" default="NoWrap" />
+      <attribute name="text-trimming" type="enum" values="None,CharacterEllipsis,WordEllipsis" default="None" />
+      <attribute name="text-decoration" type="enum" values="None,Underline,Strikethrough,Baseline,OverLine" default="None" />
+      <attribute name="line-height" type="double" default="NaN" min="0" />
+      <attribute name="max-lines" type="int" default="0" min="0" />
+    </attributes>
+  </control>
+  
+  <control name="Image" type="display" category="avalonia-display">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="source" type="string" default="" />
+      <attribute name="stretch" type="enum" values="None,Fill,Uniform,UniformToFill" default="Uniform" />
+      <attribute name="stretch-direction" type="enum" values="UpOnly,DownOnly,Both" default="Both" />
+    </attributes>
+  </control>
+  
+  <control name="ProgressBar" type="display" category="avalonia-display">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="value" type="double" default="0" />
+      <attribute name="minimum" type="double" default="0" />
+      <attribute name="maximum" type="double" default="100" />
+      <attribute name="is-indeterminate" type="bool" default="false" />
+      <attribute name="orientation" type="enum" values="Horizontal,Vertical" default="Horizontal" />
+      <attribute name="show-progress-text" type="bool" default="false" />
+    </attributes>
+  </control>
+  
+  <!-- Data Controls -->
+  <control name="AvaloniaListView" type="data" category="avalonia-data" inherits="ListView">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas,ScrollViewer</allowed-parents>
+      <allowed-children>ListViewItem</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="selection-mode" type="enum" values="Single,Multiple,Extended,Toggle" default="Single" />
+    </attributes>
+    <structure>
+      <view>
+        <grid-view>
+          <columns>
+            <grid-view-column header="" display-member-binding="" width="auto" />
+          </columns>
+        </grid-view>
+      </view>
+    </structure>
+  </control>
+  
+  <control name="DataGrid" type="data" category="avalonia-data">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>DataGridColumn</allowed-children>
+      <container>true</container>
+      <requires-structure>columns</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="items-source" type="object" default="null" />
+      <attribute name="selected-item" type="object" default="null" />
+      <attribute name="selected-index" type="int" default="-1" />
+      <attribute name="can-user-resize-columns" type="bool" default="true" />
+      <attribute name="can-user-sort-columns" type="bool" default="true" />
+      <attribute name="can-user-reorder-columns" type="bool" default="true" />
+      <attribute name="row-background" type="brush" default="Transparent" />
+      <attribute name="alternating-row-background" type="brush" default="Transparent" />
+      <attribute name="selection-mode" type="enum" values="Single,Extended" default="Extended" />
+      <attribute name="grid-lines-visibility" type="enum" values="None,Horizontal,Vertical,All" default="All" />
+      <attribute name="headers-visibility" type="enum" values="None,Column,Row,All" default="Column" />
+      <attribute name="auto-generate-columns" type="bool" default="true" />
+      <attribute name="is-read-only" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="selection-changed" />
+      <event name="current-cell-changed" />
+      <event name="row-edit-ending" />
+      <event name="row-edit-ended" />
+      <event name="cell-edit-ending" />
+      <event name="cell-edit-ended" />
+      <event name="begin-edit" />
+      <event name="prepare-cell-for-edit" />
+      <event name="column-reordering" />
+      <event name="column-reordered" />
+      <event name="sorting" />
+    </behavior>
+    <structure>
+      <columns min-count="0" max-count="50">
+        <DataGridTextColumn header="" binding="" width="*" is-read-only="false" />
+        <DataGridCheckBoxColumn header="" binding="" width="auto" is-read-only="false" />
+        <DataGridComboBoxColumn header="" binding="" width="*" is-read-only="false" />
+        <DataGridTemplateColumn header="" width="*" is-read-only="false" />
+      </columns>
+    </structure>
+  </control>
+  
+  <control name="AvaloniaTreeView" type="data" category="avalonia-data" inherits="TreeView">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>TreeViewItem</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="selected-item" type="object" default="null" />
+      <attribute name="auto-scroll-to-selected-item" type="bool" default="true" />
+    </attributes>
+    <behavior>
+      <event name="selection-changed" />
+    </behavior>
+    <structure>
+      <items>
+        <TreeViewItem header="" is-expanded="false" is-selected="false">
+          <items>
+            <!-- Recursive TreeViewItem structure -->
+          </items>
+        </TreeViewItem>
+      </items>
+    </structure>
+  </control>
+  
+  <control name="ListBox" type="data" category="avalonia-data">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>ListBoxItem</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="selected-item" type="object" default="null" />
+      <attribute name="selected-index" type="int" default="-1" />
+      <attribute name="selection-mode" type="enum" values="Single,Multiple,Extended,Toggle" default="Single" />
+    </attributes>
+    <behavior>
+      <event name="selection-changed" />
+    </behavior>
+    <structure>
+      <items>
+        <ListBoxItem content="" is-selected="false" />
+      </items>
+    </structure>
+  </control>
+  
+  <!-- Container and Decoration Controls -->
+  <control name="Border" type="container" category="avalonia-decoration">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>single-child</allowed-children>
+      <container>true</container>
+      <max-children>1</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="border-brush" type="brush" default="Black" />
+      <attribute name="border-thickness" type="thickness" default="0" />
+      <attribute name="corner-radius" type="corner-radius" default="0" />
+      <attribute name="background" type="brush" default="Transparent" />
+      <attribute name="padding" type="thickness" default="0" />
+    </attributes>
+  </control>
+  
+  <control name="ScrollViewer" type="container" category="avalonia-container">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas,Border</allowed-parents>
+      <allowed-children>single-child</allowed-children>
+      <container>true</container>
+      <max-children>1</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="horizontal-scroll-bar-visibility" type="enum" values="Disabled,Auto,Hidden,Visible" default="Disabled" />
+      <attribute name="vertical-scroll-bar-visibility" type="enum" values="Disabled,Auto,Hidden,Visible" default="Auto" />
+      <attribute name="zoom-mode" type="enum" values="Disabled,Enabled" default="Disabled" />
+      <attribute name="horizontal-snap-points-type" type="enum" values="None,Optional,Mandatory,OptionalSingle,MandatorySingle" default="None" />
+      <attribute name="vertical-snap-points-type" type="enum" values="None,Optional,Mandatory,OptionalSingle,MandatorySingle" default="None" />
+      <attribute name="is-scroll-chaining-enabled" type="bool" default="true" />
+    </attributes>
+    <behavior>
+      <event name="scroll-changed" />
+    </behavior>
+  </control>
+  
+  <control name="Expander" type="container" category="avalonia-container">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>single-child</allowed-children>
+      <container>true</container>
+      <max-children>1</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="is-expanded" type="bool" default="false" />
+      <attribute name="expand-direction" type="enum" values="Down,Up,Left,Right" default="Down" />
+      <attribute name="header" type="object" default="null" />
+    </attributes>
+    <behavior>
+      <event name="expanded" />
+      <event name="collapsed" />
+    </behavior>
+  </control>
+  
+  <control name="TabControl" type="container" category="avalonia-container">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>TabItem</allowed-children>
+      <container>true</container>
+      <requires-structure>tabs</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="selected-index" type="int" default="0" min="0" />
+      <attribute name="selected-item" type="object" default="null" />
+      <attribute name="tab-strip-placement" type="enum" values="Top,Bottom,Left,Right" default="Top" />
+    </attributes>
+    <behavior>
+      <event name="selection-changed" />
+    </behavior>
+    <structure>
+      <tabs min-count="1" max-count="20">
+        <TabItem header="" is-selected="false">
+          <!-- Tab content -->
+        </TabItem>
+      </tabs>
+    </structure>
+  </control>
+  
+  <control name="SplitView" type="container" category="avalonia-container">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>pane-content</allowed-children>
+      <container>true</container>
+      <max-children>2</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="is-pane-open" type="bool" default="false" />
+      <attribute name="display-mode" type="enum" values="Overlay,Inline,CompactOverlay,CompactInline" default="Overlay" />
+      <attribute name="open-pane-length" type="double" default="320" min="0" />
+      <attribute name="compact-pane-length" type="double" default="48" min="0" />
+      <attribute name="pane-placement" type="enum" values="Left,Right" default="Left" />
+    </attributes>
+    <behavior>
+      <event name="pane-opened" />
+      <event name="pane-closed" />
+    </behavior>
+    <structure>
+      <pane>
+        <!-- Pane content -->
+      </pane>
+      <content>
+        <!-- Main content -->
+      </content>
+    </structure>
+  </control>
+  
+  <!-- Specialized Controls -->
+  <control name="MenuBar" type="navigation" category="avalonia-navigation">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel</allowed-parents>
+      <allowed-children>NativeMenuItem</allowed-children>
+      <container>true</container>
+      <requires-structure>menu-items</requires-structure>
+    </constraints>
+    <structure>
+      <menu-items min-count="1" max-count="20">
+        <NativeMenuItem header="" command="" input-gesture="">
+          <menu-items>
+            <!-- Nested menu items -->
+          </menu-items>
+        </NativeMenuItem>
+      </menu-items>
+    </structure>
+  </control>
+  
+  <control name="ContextMenu" type="navigation" category="avalonia-navigation">
+    <constraints>
+      <allowed-parents>any-control</allowed-parents>
+      <allowed-children>MenuItem</allowed-children>
+      <container>true</container>
+      <requires-structure>menu-items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="placement-mode" type="enum" values="Bottom,Right,Mouse,Relative,BottomEdgeAlignedLeft,BottomEdgeAlignedRight,TopEdgeAlignedLeft,TopEdgeAlignedRight,LeftEdgeAlignedTop,LeftEdgeAlignedBottom,RightEdgeAlignedTop,RightEdgeAlignedBottom" default="Mouse" />
+      <attribute name="placement-target" type="object" default="null" />
+    </attributes>
+    <behavior>
+      <event name="opened" />
+      <event name="closed" />
+    </behavior>
+    <structure>
+      <menu-items min-count="1" max-count="50">
+        <MenuItem header="" command="" input-gesture="" is-checkable="false" is-checked="false">
+          <menu-items>
+            <!-- Nested menu items -->
+          </menu-items>
+        </MenuItem>
+      </menu-items>
+    </structure>
+  </control>
+  
+  <control name="ToolTip" type="display" category="avalonia-decoration">
+    <constraints>
+      <allowed-parents>any-control</allowed-parents>
+      <allowed-children>any-content</allowed-children>
+      <container>true</container>
+      <max-children>1</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="tip" type="object" default="null" />
+      <attribute name="placement" type="enum" values="Top,Bottom,Left,Right,Pointer,TopEdgeAlignedLeft,TopEdgeAlignedRight,BottomEdgeAlignedLeft,BottomEdgeAlignedRight,LeftEdgeAlignedTop,LeftEdgeAlignedBottom,RightEdgeAlignedTop,RightEdgeAlignedBottom" default="Top" />
+      <attribute name="horizontal-offset" type="double" default="0" />
+      <attribute name="vertical-offset" type="double" default="0" />
+      <attribute name="show-delay" type="int" default="400" min="0" max="5000" />
+      <attribute name="show-on-disabled" type="bool" default="true" />
+    </attributes>
+    <behavior>
+      <event name="tip-opened" />
+      <event name="tip-closed" />
+    </behavior>
+  </control>
+  
+  <control name="FlyoutBase" type="container" category="avalonia-popup">
+    <constraints>
+      <allowed-parents>any-control</allowed-parents>
+      <allowed-children>any-content</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="placement" type="enum" values="Top,Bottom,Left,Right,TopEdgeAlignedLeft,TopEdgeAlignedRight,BottomEdgeAlignedLeft,BottomEdgeAlignedRight,LeftEdgeAlignedTop,LeftEdgeAlignedBottom,RightEdgeAlignedTop,RightEdgeAlignedBottom" default="Bottom" />
+      <attribute name="show-mode" type="enum" values="Standard,Transient,TransientWithDismissOnPointerMoveAway" default="Standard" />
+    </attributes>
+    <behavior>
+      <event name="opened" />
+      <event name="closed" />
+    </behavior>
+  </control>
+  
+  <control name="Window" type="container" category="avalonia-window">
+    <constraints>
+      <allowed-parents>none</allowed-parents>
+      <allowed-children>single-child</allowed-children>
+      <container>true</container>
+      <max-children>1</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="title" type="string" default="" />
+      <attribute name="width" type="double" default="800" min="200" max="4000" />
+      <attribute name="height" type="double" default="600" min="150" max="3000" />
+      <attribute name="min-width" type="double" default="0" min="0" />
+      <attribute name="min-height" type="double" default="0" min="0" />
+      <attribute name="max-width" type="double" default="Infinity" />
+      <attribute name="max-height" type="double" default="Infinity" />
+      <attribute name="can-resize" type="bool" default="true" />
+      <attribute name="show-in-taskbar" type="bool" default="true" />
+      <attribute name="topmost" type="bool" default="false" />
+      <attribute name="window-state" type="enum" values="Normal,Minimized,Maximized,FullScreen" default="Normal" />
+      <attribute name="window-startup-location" type="enum" values="Manual,CenterScreen,CenterOwner" default="Manual" />
+      <attribute name="system-decorations" type="enum" values="Full,BorderOnly,None" default="Full" />
+      <attribute name="extend-client-area-to-decorations-hint" type="bool" default="false" />
+      <attribute name="extend-client-area-chrome-hints" type="enum" values="Default,PreferSystemChrome,PreferClientChrome,NoChrome" default="Default" />
+      <attribute name="extend-client-area-title-bar-height-hint" type="double" default="-1" />
+    </attributes>
+    <behavior>
+      <event name="activated" />
+      <event name="deactivated" />
+      <event name="closing" />
+      <event name="closed" />
+      <event name="opened" />
+      <event name="position-changed" />
+      <event name="resize-started" />
+      <event name="resize-ended" />
+      <event name="window-state-changed" />
+    </behavior>
+  </control>
+  
+  <control name="UserControl" type="container" category="avalonia-container">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas,Border,ScrollViewer</allowed-parents>
+      <allowed-children>single-child</allowed-children>
+      <container>true</container>
+      <max-children>1</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="content" type="object" default="null" />
+    </attributes>
+  </control>
+  
+  <!-- Media Controls -->
+  <control name="MediaElement" type="media" category="avalonia-media">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="source" type="string" default="" />
+      <attribute name="volume" type="double" default="0.5" min="0" max="1" />
+      <attribute name="is-muted" type="bool" default="false" />
+      <attribute name="auto-play" type="bool" default="false" />
+      <attribute name="stretch" type="enum" values="None,Fill,Uniform,UniformToFill" default="Uniform" />
+      <attribute name="position" type="timespan" default="00:00:00" />
+    </attributes>
+    <behavior>
+      <event name="media-opened" />
+      <event name="media-ended" />
+      <event name="media-failed" />
+      <event name="position-changed" />
+      <event name="buffering-started" />
+      <event name="buffering-ended" />
+    </behavior>
+  </control>
+  
+  <!-- Advanced Input Controls -->
+  <control name="MaskedTextBox" type="input" category="avalonia-input">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="mask" type="string" default="" />
+      <attribute name="prompt-char" type="char" default="_" />
+      <attribute name="culture" type="string" default="en-US" />
+      <attribute name="ascii-only" type="bool" default="false" />
+      <attribute name="reset-on-prompt" type="bool" default="true" />
+      <attribute name="reset-on-space" type="bool" default="true" />
+      <attribute name="skip-literals" type="bool" default="true" />
+    </attributes>
+    <behavior>
+      <event name="mask-input-rejected" />
+      <event name="text-mask-format-changed" />
+    </behavior>
+  </control>
+  
+  <control name="ColorPicker" type="input" category="avalonia-input">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="color" type="color" default="#FFFFFF" />
+      <attribute name="is-alpha-enabled" type="bool" default="true" />
+      <attribute name="is-color-slider-visible" type="bool" default="true" />
+      <attribute name="is-color-palette-visible" type="bool" default="true" />
+      <attribute name="is-hex-input-visible" type="bool" default="true" />
+      <attribute name="palette-column-count" type="int" default="10" min="1" max="20" />
+    </attributes>
+    <behavior>
+      <event name="color-changed" />
+    </behavior>
+  </control>
+  
+  <!-- Drawing and Canvas Controls -->
+  <control name="PathIcon" type="display" category="avalonia-graphics">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas,Button</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="data" type="geometry" default="" />
+      <attribute name="foreground" type="brush" default="Black" />
+    </attributes>
+  </control>
+  
+  <control name="Viewbox" type="container" category="avalonia-layout">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel,Canvas</allowed-parents>
+      <allowed-children>single-child</allowed-children>
+      <container>true</container>
+      <max-children>1</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="stretch" type="enum" values="None,Fill,Uniform,UniformToFill" default="Uniform" />
+      <attribute name="stretch-direction" type="enum" values="UpOnly,DownOnly,Both" default="Both" />
+    </attributes>
+  </control>
+  
+  <!-- Notification Controls -->
+  <control name="NotificationCard" type="display" category="avalonia-notification">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid</allowed-parents>
+      <allowed-children>any-content</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="notification-type" type="enum" values="Information,Success,Warning,Error" default="Information" />
+      <attribute name="is-closable" type="bool" default="true" />
+      <attribute name="close-on-click" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="closed" />
+      <event name="closing" />
+    </behavior>
+  </control>
+  
+  <!-- Custom Structures and Patterns -->
+  <structure name="AvaloniaFormField" type="pattern" category="avalonia-composite" inherits="FormField">
+    <constraints>
+      <allowed-parents>StackPanel,Grid,UniformGrid</allowed-parents>
+      <allowed-children>Label,AvaloniaTextBox,AvaloniaComboBox,CheckBox,NumericUpDown</allowed-children>
+      <container>true</container>
+      <required-slots>input</required-slots>
+    </constraints>
+    <attributes>
+      <attribute name="label-text" type="string" required="true" />
+      <attribute name="required" type="bool" default="false" />
+      <attribute name="validation-message" type="string" default="" />
+      <attribute name="help-text" type="string" default="" />
+      <attribute name="label-width" type="double" default="120" min="50" max="300" />
+    </attributes>
+    <template>
+      <Grid name="fieldContainer">
+        <grid-definitions>
+          <column-definitions>
+            <column-definition width="{label-width}" />
+            <column-definition width="*" />
+          </column-definitions>
+          <row-definitions>
+            <row-definition height="Auto" />
+            <row-definition height="Auto" />
+          </row-definitions>
+        </grid-definitions>
+        
+        <AvaloniaLabel name="fieldLabel" text="{label-text}" grid-column="0" grid-row="0" />
+        <slot name="input" allowed-controls="AvaloniaTextBox,AvaloniaComboBox,CheckBox,NumericUpDown" required="true" grid-column="1" grid-row="0" />
+        
+        <TextBlock name="helpText" text="{help-text}" grid-column="1" grid-row="1" 
+                   font-size="11" foreground="Gray" visible="{help-text != ''}" />
+        <TextBlock name="validationLabel" text="{validation-message}" grid-column="1" grid-row="1"
+                   visible="false" foreground="Red" font-size="11" />
+      </Grid>
+    </template>
+  </structure>
+  
+  <structure name="AvaloniaButtonBar" type="pattern" category="avalonia-composite">
+    <constraints>
+      <allowed-parents>Panel,StackPanel,Grid,DockPanel</allowed-parents>
+      <allowed-children>AvaloniaButton</allowed-children>
+      <container>true</container>
+      <max-children>10</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="alignment" type="enum" values="Left,Center,Right,Stretch" default="Right" />
+      <attribute name="spacing" type="double" default="5" min="0" max="20" />
+      <attribute name="orientation" type="enum" values="Horizontal,Vertical" default="Horizontal" />
+    </attributes>
+    <template>
+      <StackPanel name="buttonContainer" orientation="{orientation}" spacing="{spacing}">
+        <slot name="buttons" allowed-controls="AvaloniaButton" />
+      </StackPanel>
+    </template>
+  </structure>
+  
+  <structure name="AvaloniaToolbar" type="pattern" category="avalonia-composite">
+    <constraints>
+      <allowed-parents>DockPanel,Grid,StackPanel</allowed-parents>
+      <allowed-children>AvaloniaButton,Separator</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="orientation" type="enum" values="Horizontal,Vertical" default="Horizontal" />
+      <attribute name="band" type="int" default="0" min="0" max="10" />
+      <attribute name="band-index" type="int" default="0" min="0" max="100" />
+    </attributes>
+    <template>
+      <Border name="toolbarBorder" background="LightGray" border-thickness="0,0,0,1" border-brush="Gray">
+        <StackPanel name="toolbarPanel" orientation="{orientation}" margin="2">
+          <slot name="toolbar-items" allowed-controls="AvaloniaButton,Separator" />
+        </StackPanel>
+      </Border>
+    </template>
+  </structure>
+  
+  <structure name="AvaloniaStatusBar" type="pattern" category="avalonia-composite">
+    <constraints>
+      <allowed-parents>DockPanel,Grid</allowed-parents>
+      <allowed-children>TextBlock,ProgressBar,Separator</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="height" type="double" default="23" min="20" max="50" />
+    </attributes>
+    <template>
+      <Border name="statusBorder" background="LightGray" border-thickness="0,1,0,0" border-brush="Gray" height="{height}">
+        <DockPanel name="statusPanel" last-child-fill="true">
+          <slot name="status-items" allowed-controls="TextBlock,ProgressBar,Separator" />
+        </DockPanel>
+      </Border>
+    </template>
+  </structure>
+  
+  <wireframe name="AvaloniaMainWindow" type="base-layout">
+    <description>Standard Avalonia application window with menu, toolbar, status bar, and content area</description>
+    <template>
+      <DockPanel name="mainContainer">
+        <slot name="menu-bar" dock="Top" default="true">
+          <MenuBar name="mainMenu">
+            <slot name="menu-items" />
+          </MenuBar>
+        </slot>
+        
+        <slot name="toolbar" dock="Top" default="true">
+          <AvaloniaToolbar name="mainToolbar">
+            <slot name="toolbar-items" />
+          </AvaloniaToolbar>
+        </slot>
+        
+        <slot name="status-bar" dock="Bottom" default="true">
+          <AvaloniaStatusBar name="mainStatusBar">
+            <slot name="status-items" />
+          </AvaloniaStatusBar>
+        </slot>
+        
+        <slot name="main-content" required="true" />
+      </DockPanel>
+    </template>
+  </wireframe>
+  
+  <wireframe name="AvaloniaDialog" type="base-layout">
+    <description>Standard Avalonia dialog layout with content and button areas</description>
+    <template>
+      <Border name="dialogBorder" background="White" border-brush="Gray" border-thickness="1" corner-radius="4">
+        <DockPanel name="dialogContainer" margin="10">
+          <slot name="dialog-buttons" dock="Bottom" default="true">
+            <AvaloniaButtonBar name="dialogButtons" alignment="Right" margin="0,10,0,0">
+              <AvaloniaButton name="okButton" text="OK" is-default="true" />
+              <AvaloniaButton name="cancelButton" text="Cancel" is-cancel="true" />
+            </AvaloniaButtonBar>
+          </slot>
+          
+          <slot name="dialog-content" required="true" />
+        </DockPanel>
+      </Border>
+    </template>
+  </wireframe>
+  
+</patterns>

+ 0 - 0
UILayoutDefinitionFormat/Definitions/webform-controls.xml


+ 1101 - 0
UILayoutDefinitionFormat/Definitions/winform-controls.xml

@@ -0,0 +1,1101 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- WinForms Control Definitions for UI Layout Definition Format -->
+<patterns xmlns="ui-layout-patterns">
+  
+  <!-- Basic Display Controls -->
+  <control name="Label" type="display" category="winforms-basic">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="" />
+      <attribute name="font" type="font" default="Microsoft Sans Serif, 8.25pt" />
+      <attribute name="forecolor" type="color" default="ControlText" />
+      <attribute name="backcolor" type="color" default="Control" />
+      <attribute name="textalign" type="enum" values="TopLeft,TopCenter,TopRight,MiddleLeft,MiddleCenter,MiddleRight,BottomLeft,BottomCenter,BottomRight" default="TopLeft" />
+      <attribute name="autosize" type="bool" default="false" />
+      <attribute name="wordwrap" type="bool" default="true" />
+      <attribute name="usemnemonic" type="bool" default="true" />
+      <attribute name="borderStyle" type="enum" values="None,FixedSingle,Fixed3D" default="None" />
+    </attributes>
+    <behavior>
+      <event name="click" />
+      <event name="doubleclick" />
+    </behavior>
+  </control>
+  
+  <control name="LinkLabel" type="display" category="winforms-basic" inherits="Label">
+    <attributes>
+      <attribute name="linkcolor" type="color" default="Blue" />
+      <attribute name="visitedlinkcolor" type="color" default="Purple" />
+      <attribute name="activelinkcolor" type="color" default="Red" />
+      <attribute name="linkbehavior" type="enum" values="SystemDefault,AlwaysUnderline,HoverUnderline,NeverUnderline" default="SystemDefault" />
+    </attributes>
+    <behavior>
+      <event name="linkclicked" />
+    </behavior>
+    <structure>
+      <links min-count="0" max-count="unlimited">
+        <link start="" length="" linkdata="" />
+      </links>
+    </structure>
+  </control>
+  
+  <!-- Input Controls -->
+  <control name="TextBox" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="" />
+      <attribute name="maxlength" type="int" default="32767" min="0" max="2147483647" />
+      <attribute name="multiline" type="bool" default="false" />
+      <attribute name="readonly" type="bool" default="false" />
+      <attribute name="passwordchar" type="char" default="" />
+      <attribute name="usepasswordchar" type="bool" default="false" />
+      <attribute name="acceptstab" type="bool" default="false" />
+      <attribute name="acceptsreturn" type="bool" default="false" />
+      <attribute name="wordwrap" type="bool" default="true" />
+      <attribute name="scrollbars" type="enum" values="None,Horizontal,Vertical,Both" default="None" />
+      <attribute name="textalign" type="enum" values="Left,Center,Right" default="Left" />
+      <attribute name="charactercasing" type="enum" values="Normal,Upper,Lower" default="Normal" />
+      <attribute name="borderstyle" type="enum" values="None,FixedSingle,Fixed3D" default="Fixed3D" />
+    </attributes>
+    <behavior>
+      <event name="textchanged" />
+      <event name="enter" />
+      <event name="leave" />
+      <event name="keydown" />
+      <event name="keyup" />
+      <event name="keypress" />
+    </behavior>
+  </control>
+  
+  <control name="RichTextBox" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="" />
+      <attribute name="rtf" type="string" default="" />
+      <attribute name="readonly" type="bool" default="false" />
+      <attribute name="multiline" type="bool" default="true" />
+      <attribute name="wordwrap" type="bool" default="true" />
+      <attribute name="scrollbars" type="enum" values="None,Horizontal,Vertical,Both,ForcedHorizontal,ForcedVertical,ForcedBoth" default="Both" />
+      <attribute name="detecturls" type="bool" default="true" />
+      <attribute name="autowordselection" type="bool" default="false" />
+      <attribute name="showselectionmargin" type="bool" default="false" />
+      <attribute name="acceptstab" type="bool" default="false" />
+      <attribute name="zoomfactor" type="float" default="1.0" min="0.015625" max="64.0" />
+    </attributes>
+    <behavior>
+      <event name="textchanged" />
+      <event name="selectionchanged" />
+      <event name="linkclicked" />
+    </behavior>
+  </control>
+  
+  <control name="MaskedTextBox" type="input" category="winforms-input" inherits="TextBox">
+    <attributes>
+      <attribute name="mask" type="string" default="" />
+      <attribute name="promptchar" type="char" default="_" />
+      <attribute name="includeprompt" type="bool" default="true" />
+      <attribute name="includeliterals" type="bool" default="true" />
+      <attribute name="allowpromptascorrectchar" type="bool" default="true" />
+      <attribute name="asciionly" type="bool" default="false" />
+      <attribute name="beeponsamplerror" type="bool" default="false" />
+      <attribute name="culture" type="string" default="en-US" />
+      <attribute name="cutcopymaskedformat" type="enum" values="IncludePrompt,IncludeLiterals,ExcludePromptAndLiterals" default="IncludeLiterals" />
+      <attribute name="hidepromptonfocus" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="maskchanged" />
+      <event name="maskinputrejected" />
+    </behavior>
+  </control>
+  
+  <!-- Selection Controls -->
+  <control name="ComboBox" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>items</allowed-children>
+      <container>false</container>
+      <requires-structure>items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="" />
+      <attribute name="selectedindex" type="int" default="-1" />
+      <attribute name="selectedtext" type="string" default="" />
+      <attribute name="dropdownstyle" type="enum" values="Simple,DropDown,DropDownList" default="DropDown" />
+      <attribute name="dropdownwidth" type="int" default="121" min="0" />
+      <attribute name="dropdownheight" type="int" default="106" min="0" />
+      <attribute name="maxdropdownitems" type="int" default="8" min="1" max="100" />
+      <attribute name="sorted" type="bool" default="false" />
+      <attribute name="integralheight" type="bool" default="true" />
+      <attribute name="itemheight" type="int" default="13" min="0" />
+    </attributes>
+    <behavior>
+      <event name="selectedindexchanged" />
+      <event name="selectedvaluechanged" />
+      <event name="textchanged" />
+      <event name="dropdownclosed" />
+      <event name="dropdown" />
+    </behavior>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <item text="" value="" />
+      </items>
+    </structure>
+  </control>
+  
+  <control name="ListBox" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>items</allowed-children>
+      <container>false</container>
+      <requires-structure>items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="selectedindex" type="int" default="-1" />
+      <attribute name="selectionmode" type="enum" values="None,One,MultiSimple,MultiExtended" default="One" />
+      <attribute name="sorted" type="bool" default="false" />
+      <attribute name="integralheight" type="bool" default="true" />
+      <attribute name="itemheight" type="int" default="13" min="0" />
+      <attribute name="scrollalwaysvisible" type="bool" default="false" />
+      <attribute name="horizontalscrollbar" type="bool" default="false" />
+      <attribute name="horizontalextent" type="int" default="0" />
+      <attribute name="columnwidth" type="int" default="0" />
+      <attribute name="multicolumn" type="bool" default="false" />
+      <attribute name="usecolumns" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="selectedindexchanged" />
+      <event name="selectedvaluechanged" />
+      <event name="doubleclick" />
+    </behavior>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <item text="" value="" />
+      </items>
+    </structure>
+  </control>
+  
+  <control name="CheckedListBox" type="input" category="winforms-input" inherits="ListBox">
+    <attributes>
+      <attribute name="checkontab" type="bool" default="false" />
+      <attribute name="threedcheckboxes" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="itemcheck" />
+    </behavior>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <item text="" value="" checked="false" checkstate="Unchecked" />
+      </items>
+    </structure>
+  </control>
+  
+  <!-- Action Controls -->
+  <control name="Button" type="action" category="winforms-action">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="Button" />
+      <attribute name="enabled" type="bool" default="true" />
+      <attribute name="usevisualstyleelement" type="bool" default="true" />
+      <attribute name="flatstyle" type="enum" values="Flat,Popup,Standard,System" default="Standard" />
+      <attribute name="image" type="image" default="null" />
+      <attribute name="imagealign" type="enum" values="TopLeft,TopCenter,TopRight,MiddleLeft,MiddleCenter,MiddleRight,BottomLeft,BottomCenter,BottomRight" default="MiddleCenter" />
+      <attribute name="imageindex" type="int" default="-1" />
+      <attribute name="textalign" type="enum" values="TopLeft,TopCenter,TopRight,MiddleLeft,MiddleCenter,MiddleRight,BottomLeft,BottomCenter,BottomRight" default="MiddleCenter" />
+      <attribute name="textimagerelation" type="enum" values="Overlay,TextAboveImage,TextBeforeImage,ImageAboveText,ImageBeforeText" default="Overlay" />
+      <attribute name="usemnemonic" type="bool" default="true" />
+      <attribute name="dialogresult" type="enum" values="None,OK,Cancel,Abort,Retry,Ignore,Yes,No" default="None" />
+    </attributes>
+    <behavior>
+      <event name="click" required="true" />
+      <event name="mousedown" />
+      <event name="mouseup" />
+    </behavior>
+  </control>
+  
+  <control name="CheckBox" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="CheckBox" />
+      <attribute name="checked" type="bool" default="false" />
+      <attribute name="checkstate" type="enum" values="Unchecked,Checked,Indeterminate" default="Unchecked" />
+      <attribute name="threestate" type="bool" default="false" />
+      <attribute name="autocheck" type="bool" default="true" />
+      <attribute name="appearance" type="enum" values="Normal,Button" default="Normal" />
+      <attribute name="checkalign" type="enum" values="TopLeft,TopCenter,TopRight,MiddleLeft,MiddleCenter,MiddleRight,BottomLeft,BottomCenter,BottomRight" default="MiddleLeft" />
+      <attribute name="flatstyle" type="enum" values="Flat,Popup,Standard,System" default="Standard" />
+      <attribute name="textalign" type="enum" values="TopLeft,TopCenter,TopRight,MiddleLeft,MiddleCenter,MiddleRight,BottomLeft,BottomCenter,BottomRight" default="MiddleLeft" />
+    </attributes>
+    <behavior>
+      <event name="checkedchanged" />
+      <event name="checkstatechanged" />
+      <event name="click" />
+    </behavior>
+  </control>
+  
+  <control name="RadioButton" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="RadioButton" />
+      <attribute name="checked" type="bool" default="false" />
+      <attribute name="autocheck" type="bool" default="true" />
+      <attribute name="appearance" type="enum" values="Normal,Button" default="Normal" />
+      <attribute name="checkalign" type="enum" values="TopLeft,TopCenter,TopRight,MiddleLeft,MiddleCenter,MiddleRight,BottomLeft,BottomCenter,BottomRight" default="MiddleLeft" />
+      <attribute name="flatstyle" type="enum" values="Flat,Popup,Standard,System" default="Standard" />
+      <attribute name="textalign" type="enum" values="TopLeft,TopCenter,TopRight,MiddleLeft,MiddleCenter,MiddleRight,BottomLeft,BottomCenter,BottomRight" default="MiddleLeft" />
+    </attributes>
+    <behavior>
+      <event name="checkedchanged" />
+      <event name="click" />
+    </behavior>
+  </control>
+  
+  <!-- Container Controls -->
+  <control name="Panel" type="container" category="winforms-container">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+      <max-children>unlimited</max-children>
+    </constraints>
+    <attributes>
+      <attribute name="autosize" type="bool" default="false" />
+      <attribute name="autosizemode" type="enum" values="GrowOnly,GrowAndShrink" default="GrowOnly" />
+      <attribute name="borderstyle" type="enum" values="None,FixedSingle,Fixed3D" default="None" />
+      <attribute name="autoscroll" type="bool" default="false" />
+      <attribute name="autoscrollmargin" type="size" default="0,0" />
+      <attribute name="autoscrollminsize" type="size" default="0,0" />
+      <attribute name="padding" type="padding" default="0,0,0,0" />
+    </attributes>
+    <structure>
+      <children allow-multiple="true" />
+    </structure>
+  </control>
+  
+  <control name="GroupBox" type="container" category="winforms-container">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="GroupBox" />
+      <attribute name="flatstyle" type="enum" values="Flat,Popup,Standard,System" default="Standard" />
+      <attribute name="autosizemode" type="enum" values="GrowOnly,GrowAndShrink" default="GrowOnly" />
+      <attribute name="autosize" type="bool" default="false" />
+    </attributes>
+  </control>
+  
+  <control name="TabControl" type="container" category="winforms-container">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>TabPage</allowed-children>
+      <container>true</container>
+      <requires-structure>tabpages</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="selectedindex" type="int" default="-1" />
+      <attribute name="alignment" type="enum" values="Top,Bottom,Left,Right" default="Top" />
+      <attribute name="appearance" type="enum" values="Normal,Buttons,FlatButtons" default="Normal" />
+      <attribute name="multiline" type="bool" default="false" />
+      <attribute name="sizemodeFixed" type="bool" default="false" />
+      <attribute name="itemsize" type="size" default="0,0" />
+      <attribute name="padding" type="point" default="6,3" />
+      <attribute name="showtooltips" type="bool" default="false" />
+      <attribute name="hottrack" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="selectedindexchanged" />
+      <event name="selecting" />
+      <event name="selected" />
+      <event name="deselecting" />
+      <event name="deselected" />
+    </behavior>
+    <structure>
+      <tabpages min-count="0" max-count="unlimited">
+        <tabpage name="" text="" tooltip="" imageindex="-1" />
+      </tabpages>
+    </structure>
+  </control>
+  
+  <control name="TabPage" type="container" category="winforms-container">
+    <constraints>
+      <allowed-parents>TabControl</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="text" type="string" default="TabPage" />
+      <attribute name="tooltip" type="string" default="" />
+      <attribute name="imageindex" type="int" default="-1" />
+      <attribute name="imagekey" type="string" default="" />
+      <attribute name="usevisualstylebackcolor" type="bool" default="false" />
+      <attribute name="autoscroll" type="bool" default="false" />
+      <attribute name="autoscrollmargin" type="size" default="0,0" />
+      <attribute name="autoscrollminsize" type="size" default="0,0" />
+    </attributes>
+  </control>
+  
+  <control name="SplitContainer" type="container" category="winforms-container">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel</allowed-parents>
+      <allowed-children>SplitPanel</allowed-children>
+      <container>true</container>
+      <requires-structure>panels</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="orientation" type="enum" values="Horizontal,Vertical" default="Vertical" />
+      <attribute name="splitposition" type="int" default="50" />
+      <attribute name="splitterdistance" type="int" default="50" />
+      <attribute name="splitterwidth" type="int" default="4" min="1" />
+      <attribute name="fixedpanel" type="enum" values="None,Panel1,Panel2" default="None" />
+      <attribute name="issplitterfixed" type="bool" default="false" />
+      <attribute name="panel1collapsed" type="bool" default="false" />
+      <attribute name="panel2collapsed" type="bool" default="false" />
+      <attribute name="panel1mindistance" type="int" default="25" />
+      <attribute name="panel2mindistance" type="int" default="25" />
+    </attributes>
+    <behavior>
+      <event name="splittermoved" />
+      <event name="splittermoving" />
+    </behavior>
+    <structure>
+      <panels min-count="2" max-count="2">
+        <panel name="Panel1" />
+        <panel name="Panel2" />
+      </panels>
+    </structure>
+  </control>
+  
+  <control name="SplitPanel" type="container" category="winforms-container">
+    <constraints>
+      <allowed-parents>SplitContainer</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="autoscroll" type="bool" default="false" />
+      <attribute name="autoscrollmargin" type="size" default="0,0" />
+      <attribute name="autoscrollminsize" type="size" default="0,0" />
+    </attributes>
+  </control>
+  
+  <control name="TableLayoutPanel" type="container" category="winforms-container">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+      <requires-structure>table-layout</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="columncount" type="int" default="2" min="0" />
+      <attribute name="rowcount" type="int" default="2" min="0" />
+      <attribute name="growstyle" type="enum" values="FixedSize,AddRows,AddColumns" default="AddRows" />
+      <attribute name="cellborderstyle" type="enum" values="None,Single,Inset,InsetDouble,Outset,OutsetDouble,OutsetPartial" default="None" />
+    </attributes>
+    <structure>
+      <table-layout>
+        <columns min-count="1" max-count="unlimited">
+          <column sizetype="AutoSize" size="0" />
+        </columns>
+        <rows min-count="1" max-count="unlimited">
+          <row sizetype="AutoSize" size="0" />
+        </rows>
+        <cells>
+          <cell column="0" row="0" columnspan="1" rowspan="1" />
+        </cells>
+      </table-layout>
+    </structure>
+  </control>
+  
+  <control name="FlowLayoutPanel" type="container" category="winforms-container">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>any-control</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="flowdirection" type="enum" values="LeftToRight,TopDown,RightToLeft,BottomUp" default="LeftToRight" />
+      <attribute name="wrapcontents" type="bool" default="true" />
+      <attribute name="autosize" type="bool" default="false" />
+      <attribute name="autosizemode" type="enum" values="GrowOnly,GrowAndShrink" default="GrowOnly" />
+    </attributes>
+  </control>
+  
+  <!-- Data Controls -->
+  <control name="DataGridView" type="data" category="winforms-data">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>columns</allowed-children>
+      <container>true</container>
+      <requires-structure>columns</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="allowusertoaddrows" type="bool" default="true" />
+      <attribute name="allowusertodeleterows" type="bool" default="true" />
+      <attribute name="allowusertoresizecolumns" type="bool" default="true" />
+      <attribute name="allowusertoresizerows" type="bool" default="true" />
+      <attribute name="allowusertoordercolumns" type="bool" default="false" />
+      <attribute name="multiselect" type="bool" default="true" />
+      <attribute name="readonly" type="bool" default="false" />
+      <attribute name="selectionmode" type="enum" values="CellSelect,FullRowSelect,FullColumnSelect,RowHeaderSelect,ColumnHeaderSelect" default="RowHeaderSelect" />
+      <attribute name="autosizecolumnsmode" type="enum" values="None,AllCells,AllCellsExceptHeader,DisplayedCells,DisplayedCellsExceptHeader,ColumnHeader,Fill" default="None" />
+      <attribute name="autosizerowsmode" type="enum" values="None,AllHeaders,AllCells,AllCellsExceptHeaders,DisplayedHeaders,DisplayedCells,DisplayedCellsExceptHeaders" default="None" />
+      <attribute name="columnheadersvisible" type="bool" default="true" />
+      <attribute name="rowheadersvisible" type="bool" default="true" />
+      <attribute name="gridlines" type="bool" default="true" />
+      <attribute name="borderstyle" type="enum" values="None,FixedSingle,Fixed3D" default="FixedSingle" />
+    </attributes>
+    <behavior>
+      <event name="cellclick" />
+      <event name="celldoubleclick" />
+      <event name="cellvaluechanged" />
+      <event name="currentcellchanged" />
+      <event name="selectionchanged" />
+      <event name="rowenter" />
+      <event name="rowleave" />
+      <event name="columnheadermouseclick" />
+    </behavior>
+    <structure>
+      <columns min-count="0" max-count="unlimited">
+        <column name="" headertext="" datapropertyname="" width="100" visible="true" readonly="false" resizable="true" sortmode="Automatic" />
+      </columns>
+    </structure>
+  </control>
+  
+  <control name="ListView" type="data" category="winforms-data">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>columns,items</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="view" type="enum" values="LargeIcon,Details,SmallIcon,List,Tile" default="LargeIcon" />
+      <attribute name="multiselect" type="bool" default="true" />
+      <attribute name="fullrowselect" type="bool" default="false" />
+      <attribute name="gridlines" type="bool" default="false" />
+      <attribute name="headerStyle" type="enum" values="Clickable,NonClickable,None" default="Clickable" />
+      <attribute name="hideselection" type="bool" default="true" />
+      <attribute name="hovselection" type="bool" default="false" />
+      <attribute name="labelwrap" type="bool" default="true" />
+      <attribute name="scrollable" type="bool" default="true" />
+      <attribute name="showgroups" type="bool" default="false" />
+      <attribute name="showitemtooltips" type="bool" default="false" />
+      <attribute name="sorting" type="enum" values="None,Ascending,Descending" default="None" />
+      <attribute name="borderstyle" type="enum" values="None,FixedSingle,Fixed3D" default="Fixed3D" />
+      <attribute name="activation" type="enum" values="Standard,OneClick,TwoClick" default="Standard" />
+      <attribute name="alignment" type="enum" values="Default,Left,Top,SnapToGrid" default="Default" />
+    </attributes>
+    <behavior>
+      <event name="selectedindexchanged" />
+      <event name="itemselectionchanged" />
+      <event name="itemactivate" />
+      <event name="itemcheck" />
+      <event name="beforelabeledit" />
+      <event name="afterlabeledit" />
+      <event name="columnclick" />
+    </behavior>
+    <structure>
+      <columns min-count="0" max-count="unlimited">
+        <column text="" width="60" textalign="Left" />
+      </columns>
+      <items min-count="0" max-count="unlimited">
+        <item text="" imageindex="-1" checked="false" tag="">
+          <subitems>
+            <subitem text="" />
+          </subitems>
+        </item>
+      </items>
+    </structure>
+  </control>
+  
+  <control name="TreeView" type="data" category="winforms-data">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>nodes</allowed-children>
+      <container>true</container>
+      <requires-structure>nodes</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="checkboxes" type="bool" default="false" />
+      <attribute name="fullrowselect" type="bool" default="false" />
+      <attribute name="hideselection" type="bool" default="true" />
+      <attribute name="hottracking" type="bool" default="false" />
+      <attribute name="labelEdit" type="bool" default="false" />
+      <attribute name="showlines" type="bool" default="true" />
+      <attribute name="showplusminus" type="bool" default="true" />
+      <attribute name="showrootlines" type="bool" default="true" />
+      <attribute name="sorted" type="bool" default="false" />
+      <attribute name="scrollable" type="bool" default="true" />
+      <attribute name="borderstyle" type="enum" values="None,FixedSingle,Fixed3D" default="Fixed3D" />
+      <attribute name="indent" type="int" default="19" min="0" />
+      <attribute name="itemheight" type="int" default="16" min="1" />
+    </attributes>
+    <behavior>
+      <event name="beforeselect" />
+      <event name="afterselect" />
+      <event name="beforecheck" />
+      <event name="aftercheck" />
+      <event name="beforeexpand" />
+      <event name="afterexpand" />
+      <event name="beforecollapse" />
+      <event name="aftercollapse" />
+      <event name="beforelabeledit" />
+      <event name="afterlabeledit" />
+      <event name="nodeMouseClick" />
+      <event name="nodeMouseDoubleClick" />
+    </behavior>
+    <structure>
+      <nodes min-count="0" max-count="unlimited">
+        <node text="" imageindex="-1" selectedimageindex="-1" checked="false" expanded="false" tag="">
+          <nodes max-depth="50">
+            <!-- Recursive node structure with depth limit -->
+          </nodes>
+        </node>
+      </nodes>
+    </structure>
+  </control>
+  
+  <!-- Progress and Status Controls -->
+  <control name="ProgressBar" type="display" category="winforms-status">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="minimum" type="int" default="0" />
+      <attribute name="maximum" type="int" default="100" />
+      <attribute name="value" type="int" default="0" />
+      <attribute name="step" type="int" default="10" />
+      <attribute name="style" type="enum" values="Blocks,Continuous,Marquee" default="Blocks" />
+      <attribute name="marqueeanimationspeed" type="int" default="100" min="0" />
+      <attribute name="rightToLeft" type="bool" default="false" />
+    </attributes>
+  </control>
+  
+  <control name="StatusStrip" type="container" category="winforms-status">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>ToolStripStatusLabel,ToolStripProgressBar,ToolStripDropDownButton,ToolStripSplitButton</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="sizinggrip" type="bool" default="true" />
+      <attribute name="showitemtooltips" type="bool" default="false" />
+      <attribute name="stretch" type="bool" default="true" />
+      <attribute name="renderstyle" type="enum" values="ManagerRenderMode,System,Professional" default="ManagerRenderMode" />
+    </attributes>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <item type="StatusLabel" text="" />
+      </items>
+    </structure>
+  </control>
+  
+  <!-- Menu and Toolbar Controls -->
+  <control name="MenuStrip" type="navigation" category="winforms-menu">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>ToolStripMenuItem</allowed-children>
+      <container>true</container>
+      <requires-structure>menu-items</requires-structure>
+    </constraints>
+    <attributes>
+      <attribute name="showitemtooltips" type="bool" default="false" />
+      <attribute name="stretch" type="bool" default="true" />
+      <attribute name="renderstyle" type="enum" values="ManagerRenderMode,System,Professional" default="ManagerRenderMode" />
+    </attributes>
+    <structure>
+      <menu-items min-count="0" max-count="unlimited">
+        <menu-item text="" shortcutkeys="None" enabled="true" visible="true" checked="false">
+          <menu-items max-depth="10">
+            <!-- Recursive menu structure -->
+          </menu-items>
+        </menu-item>
+      </menu-items>
+    </structure>
+  </control>
+  
+  <control name="ToolStrip" type="navigation" category="winforms-toolbar">
+    <constraints>
+      <allowed-parents>Form,Panel,GroupBox,TabPage</allowed-parents>
+      <allowed-children>ToolStripButton,ToolStripLabel,ToolStripSeparator,ToolStripComboBox,ToolStripTextBox</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="showitemtooltips" type="bool" default="true" />
+      <attribute name="stretch" type="bool" default="true" />
+      <attribute name="gripsVisible" type="bool" default="true" />
+      <attribute name="canoverflow" type="bool" default="true" />
+      <attribute name="layoutstyle" type="enum" values="Flow,HorizontalStackWithOverflow,StackWithOverflow,Table,VerticalStackWithOverflow" default="StackWithOverflow" />
+      <attribute name="renderstyle" type="enum" values="ManagerRenderMode,System,Professional" default="ManagerRenderMode" />
+      <attribute name="textumode" type="enum" values="ImageAndText,ImageOnly,TextImageRelation,TextOnly" default="ImageAndText" />
+    </attributes>
+    <structure>
+      <items min-count="0" max-count="unlimited">
+        <item type="Button" text="" tooltip="" image="" enabled="true" visible="true" />
+      </items>
+    </structure>
+  </control>
+  
+  <control name="ContextMenuStrip" type="navigation" category="winforms-menu">
+    <constraints>
+      <allowed-parents>any-control</allowed-parents>
+      <allowed-children>ToolStripMenuItem</allowed-children>
+      <container>true</container>
+    </constraints>
+    <attributes>
+      <attribute name="showcheckmargin" type="bool" default="false" />
+      <attribute name="showimagemargin" type="bool" default="true" />
+      <attribute name="showitemtooltips" type="bool" default="false" />
+      <attribute name="renderstyle" type="enum" values="ManagerRenderMode,System,Professional" default="ManagerRenderMode" />
+    </attributes>
+    <structure>
+      <menu-items min-count="0" max-count="unlimited">
+        <menu-item text="" shortcutkeys="None" enabled="true" visible="true" checked="false" />
+      </menu-items>
+    </structure>
+  </control>
+  
+  <!-- Numeric and Date Controls -->
+  <control name="NumericUpDown" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="value" type="decimal" default="0" />
+      <attribute name="minimum" type="decimal" default="0" />
+      <attribute name="maximum" type="decimal" default="100" />
+      <attribute name="increment" type="decimal" default="1" />
+      <attribute name="decimalplaces" type="int" default="0" min="0" max="99" />
+      <attribute name="thousandsseparator" type="bool" default="false" />
+      <attribute name="readonly" type="bool" default="false" />
+      <attribute name="interceptarrowkeys" type="bool" default="true" />
+      <attribute name="updownalign" type="enum" values="Left,Right" default="Right" />
+      <attribute name="hexadecimal" type="bool" default="false" />
+      <attribute name="borderstyle" type="enum" values="None,FixedSingle,Fixed3D" default="Fixed3D" />
+      <attribute name="textalign" type="enum" values="Left,Center,Right" default="Left" />
+    </attributes>
+    <behavior>
+      <event name="valuechanged" />
+    </behavior>
+  </control>
+  
+  <control name="DateTimePicker" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="value" type="datetime" default="now" />
+      <attribute name="format" type="enum" values="Long,Short,Time,Custom" default="Long" />
+      <attribute name="customformat" type="string" default="" />
+      <attribute name="showcheckbox" type="bool" default="false" />
+      <attribute name="checked" type="bool" default="true" />
+      <attribute name="showupdown" type="bool" default="false" />
+      <attribute name="mindate" type="datetime" default="1753-01-01" />
+      <attribute name="maxdate" type="datetime" default="9998-12-31" />
+      <attribute name="rightToLeft" type="bool" default="false" />
+      <attribute name="righttoleftlayout" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="valuechanged" />
+      <event name="formatchanged" />
+      <event name="dropdown" />
+      <event name="closeup" />
+    </behavior>
+  </control>
+  
+  <control name="MonthCalendar" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="selectionstart" type="datetime" default="today" />
+      <attribute name="selectionend" type="datetime" default="today" />
+      <attribute name="maxselectioncount" type="int" default="7" min="1" />
+      <attribute name="mindate" type="datetime" default="1753-01-01" />
+      <attribute name="maxdate" type="datetime" default="9998-12-31" />
+      <attribute name="showtoday" type="bool" default="true" />
+      <attribute name="showtodaycircle" type="bool" default="true" />
+      <attribute name="showweeknumbers" type="bool" default="false" />
+      <attribute name="scrollchange" type="int" default="1" min="1" max="20000" />
+      <attribute name="firstdayofweek" type="enum" values="Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday,Default" default="Default" />
+    </attributes>
+    <behavior>
+      <event name="datechanged" />
+      <event name="dateselected" />
+    </behavior>
+  </control>
+  
+  <!-- Scroll Controls -->
+  <control name="TrackBar" type="input" category="winforms-input">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="value" type="int" default="0" />
+      <attribute name="minimum" type="int" default="0" />
+      <attribute name="maximum" type="int" default="10" />
+      <attribute name="smallchange" type="int" default="1" />
+      <attribute name="largechange" type="int" default="5" />
+      <attribute name="orientation" type="enum" values="Horizontal,Vertical" default="Horizontal" />
+      <attribute name="tickstyle" type="enum" values="None,TopLeft,BottomRight,Both" default="BottomRight" />
+      <attribute name="tickfrequency" type="int" default="1" />
+      <attribute name="autosize" type="bool" default="true" />
+      <attribute name="rightToLeft" type="bool" default="false" />
+      <attribute name="righttoleftlayout" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="valuechanged" />
+      <event name="scroll" />
+    </behavior>
+  </control>
+  
+  <control name="HScrollBar" type="input" category="winforms-scroll">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="value" type="int" default="0" />
+      <attribute name="minimum" type="int" default="0" />
+      <attribute name="maximum" type="int" default="100" />
+      <attribute name="smallchange" type="int" default="1" />
+      <attribute name="largechange" type="int" default="10" />
+      <attribute name="rightToLeft" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="valuechanged" />
+      <event name="scroll" />
+    </behavior>
+  </control>
+  
+  <control name="VScrollBar" type="input" category="winforms-scroll" inherits="HScrollBar">
+    <attributes>
+      <attribute name="rightToLeft" type="bool" default="false" />
+    </attributes>
+  </control>
+  
+  <!-- Picture and Drawing Controls -->
+  <control name="PictureBox" type="display" category="winforms-display">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="image" type="image" default="null" />
+      <attribute name="imagelocation" type="string" default="" />
+      <attribute name="sizemode" type="enum" values="Normal,StretchImage,AutoSize,CenterImage,Zoom" default="Normal" />
+      <attribute name="borderstyle" type="enum" values="None,FixedSingle,Fixed3D" default="None" />
+      <attribute name="errorimage" type="image" default="null" />
+      <attribute name="initialimage" type="image" default="null" />
+      <attribute name="waitonload" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="click" />
+      <event name="sizechanged" />
+      <event name="loadcompleted" />
+      <event name="loadprogresschanged" />
+    </behavior>
+  </control>
+  
+  <!-- Timer Control -->
+  <control name="Timer" type="system" category="winforms-system">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="interval" type="int" default="100" min="1" />
+      <attribute name="enabled" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="tick" required="true" />
+    </behavior>
+  </control>
+  
+  <!-- File and Directory Controls -->
+  <control name="OpenFileDialog" type="dialog" category="winforms-dialog">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="filename" type="string" default="" />
+      <attribute name="filter" type="string" default="" />
+      <attribute name="filterindex" type="int" default="1" />
+      <attribute name="initialDirectory" type="string" default="" />
+      <attribute name="title" type="string" default="" />
+      <attribute name="multiselect" type="bool" default="false" />
+      <attribute name="checkfileexists" type="bool" default="true" />
+      <attribute name="checkpathexists" type="bool" default="true" />
+      <attribute name="dereferencelinks" type="bool" default="true" />
+      <attribute name="restoreDirectory" type="bool" default="false" />
+      <attribute name="showhelp" type="bool" default="false" />
+      <attribute name="supportmultidottedextensions" type="bool" default="false" />
+      <attribute name="validatenames" type="bool" default="true" />
+    </attributes>
+    <behavior>
+      <event name="fileok" />
+      <event name="helpRequest" />
+    </behavior>
+  </control>
+  
+  <control name="SaveFileDialog" type="dialog" category="winforms-dialog" inherits="OpenFileDialog">
+    <attributes>
+      <attribute name="createprompt" type="bool" default="false" />
+      <attribute name="overwriteprompt" type="bool" default="true" />
+    </attributes>
+  </control>
+  
+  <control name="FolderBrowserDialog" type="dialog" category="winforms-dialog">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="selectedpath" type="string" default="" />
+      <attribute name="description" type="string" default="" />
+      <attribute name="shownewfolderbutton" type="bool" default="true" />
+      <attribute name="rootfolder" type="enum" values="Desktop,Programs,MyDocuments,Personal,Favorites,Startup,Recent,SendTo,StartMenu,MyMusic,MyVideos,DesktopDirectory,MyComputer,NetworkShortcuts,Fonts,Templates,CommonStartMenu,CommonPrograms,CommonStartup,CommonDesktopDirectory,ApplicationData,PrinterShortcuts,LocalApplicationData,InternetCache,Cookies,History,CommonApplicationData,Windows,System,ProgramFiles,MyPictures,UserProfile,SystemX86,ProgramFilesX86,CommonProgramFiles,CommonProgramFilesX86,CommonTemplates,CommonDocuments,CommonAdminTools,AdminTools,CommonMusic,CommonPictures,CommonVideos,Resources,LocalizedResources,CommonOemLinks,CDBurning" default="Desktop" />
+    </attributes>
+    <behavior>
+      <event name="helpRequest" />
+    </behavior>
+  </control>
+  
+  <!-- Color and Font Dialogs -->
+  <control name="ColorDialog" type="dialog" category="winforms-dialog">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="color" type="color" default="Black" />
+      <attribute name="allowfullopen" type="bool" default="true" />
+      <attribute name="anycolor" type="bool" default="false" />
+      <attribute name="fullopen" type="bool" default="false" />
+      <attribute name="showhelp" type="bool" default="false" />
+      <attribute name="solidcoloronly" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="helpRequest" />
+    </behavior>
+  </control>
+  
+  <control name="FontDialog" type="dialog" category="winforms-dialog">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="font" type="font" default="Microsoft Sans Serif, 8.25pt" />
+      <attribute name="color" type="color" default="Black" />
+      <attribute name="allowscriptchange" type="bool" default="true" />
+      <attribute name="allowsimulations" type="bool" default="true" />
+      <attribute name="allowvectorfonts" type="bool" default="true" />
+      <attribute name="allowverticalfonts" type="bool" default="true" />
+      <attribute name="fixedpitchonly" type="bool" default="false" />
+      <attribute name="fontmustexist" type="bool" default="false" />
+      <attribute name="maxsize" type="int" default="0" />
+      <attribute name="minsize" type="int" default="0" />
+      <attribute name="scriptsonly" type="bool" default="false" />
+      <attribute name="showapply" type="bool" default="false" />
+      <attribute name="showcolor" type="bool" default="false" />
+      <attribute name="showeffects" type="bool" default="true" />
+      <attribute name="showhelp" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="apply" />
+      <event name="helpRequest" />
+    </behavior>
+  </control>
+  
+  <!-- Print Controls -->
+  <control name="PrintDialog" type="dialog" category="winforms-dialog">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="allowcurrentpage" type="bool" default="false" />
+      <attribute name="allowpages" type="bool" default="false" />
+      <attribute name="allowprinttofile" type="bool" default="true" />
+      <attribute name="allowselection" type="bool" default="false" />
+      <attribute name="showhelp" type="bool" default="false" />
+      <attribute name="shownetwork" type="bool" default="true" />
+      <attribute name="useexdialog" type="bool" default="false" />
+    </attributes>
+    <behavior>
+      <event name="helpRequest" />
+    </behavior>
+  </control>
+  
+  <control name="PrintPreviewDialog" type="dialog" category="winforms-dialog">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="autosizemode" type="enum" values="GrowOnly,GrowAndShrink" default="GrowOnly" />
+      <attribute name="showicon" type="bool" default="true" />
+      <attribute name="useantialias" type="bool" default="false" />
+    </attributes>
+  </control>
+  
+  <!-- WebBrowser Control -->
+  <control name="WebBrowser" type="display" category="winforms-web">
+    <constraints>
+      <allowed-parents>Panel,GroupBox,TabPage,Form,SplitPanel,TableLayoutPanel</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="url" type="string" default="about:blank" />
+      <attribute name="allownavigation" type="bool" default="true" />
+      <attribute name="allowwebbrowserdrop" type="bool" default="true" />
+      <attribute name="iswebbrowsercontextmenuenabled" type="bool" default="true" />
+      <attribute name="scripteerorssuppressed" type="bool" default="false" />
+      <attribute name="webbrowsershortcutsenabled" type="bool" default="true" />
+      <attribute name="scrollbarsenabled" type="bool" default="true" />
+    </attributes>
+    <behavior>
+      <event name="canbrowsebackchanged" />
+      <event name="canbrowseforwardchanged" />
+      <event name="documentcompleted" />
+      <event name="documenttitlechanged" />
+      <event name="encryptionlevelchanged" />
+      <event name="navigated" />
+      <event name="navigating" />
+      <event name="newwindow" />
+      <event name="progresschanged" />
+      <event name="statustetchanged" />
+    </behavior>
+  </control>
+  
+  <!-- Notification Controls -->
+  <control name="NotifyIcon" type="system" category="winforms-system">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="icon" type="icon" required="true" />
+      <attribute name="text" type="string" default="" />
+      <attribute name="visible" type="bool" default="false" />
+      <attribute name="balloontiptitle" type="string" default="" />
+      <attribute name="balloontiptext" type="string" default="" />
+      <attribute name="balloontipicon" type="enum" values="None,Info,Warning,Error" default="None" />
+    </attributes>
+    <behavior>
+      <event name="balloonTipClicked" />
+      <event name="balloonTipClosed" />
+      <event name="balloonTipShown" />
+      <event name="click" />
+      <event name="doubleclick" />
+      <event name="mouseclick" />
+      <event name="mousedoubleclick" />
+      <event name="mousedown" />
+      <event name="mousemove" />
+      <event name="mouseup" />
+    </behavior>
+  </control>
+  
+  <!-- Error Provider -->
+  <control name="ErrorProvider" type="system" category="winforms-validation">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="blinkrate" type="int" default="250" min="0" />
+      <attribute name="blinkstyle" type="enum" values="BlinkIfDifferentError,AlwaysBlink,NeverBlink" default="BlinkIfDifferentError" />
+      <attribute name="icon" type="icon" default="default-error-icon" />
+      <attribute name="datasource" type="object" default="null" />
+      <attribute name="datamember" type="string" default="" />
+      <attribute name="rightToLeft" type="bool" default="false" />
+    </attributes>
+  </control>
+  
+  <!-- Tooltip -->
+  <control name="ToolTip" type="system" category="winforms-system">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="active" type="bool" default="true" />
+      <attribute name="autodelay" type="int" default="500" min="0" />
+      <attribute name="autopop" type="int" default="5000" min="0" />
+      <attribute name="initialdelay" type="int" default="500" min="0" />
+      <attribute name="reshowdelay" type="int" default="100" min="0" />
+      <attribute name="showAlways" type="bool" default="false" />
+      <attribute name="toolTipIcon" type="enum" values="None,Info,Warning,Error" default="None" />
+      <attribute name="tooltiptitle" type="string" default="" />
+      <attribute name="useAnimation" type="bool" default="true" />
+      <attribute name="useFading" type="bool" default="true" />
+      <attribute name="istotalon" type="bool" default="true" />
+    </attributes>
+    <behavior>
+      <event name="draw" />
+      <event name="popup" />
+    </behavior>
+  </control>
+  
+  <!-- Help Provider -->
+  <control name="HelpProvider" type="system" category="winforms-system">
+    <constraints>
+      <allowed-parents>Form</allowed-parents>
+      <allowed-children>none</allowed-children>
+      <container>false</container>
+    </constraints>
+    <attributes>
+      <attribute name="helpnamespace" type="string" default="" />
+    </attributes>
+  </control>
+  
+</patterns>