mirror of
https://github.com/AtomUI/AtomUI.git
synced 2026-10-24 02:09:37 +08:00
02bda1f152
Gallery qualification: DataGridShowCase declares 65 DataGrid controls and 210 columns; column headers and row expanders are realized during page navigation, header press/release/move runs during resize/reorder/sort, and row details binding runs on row load plus expand/collapse. Avalonia basis: Pointer event adders call AddHandler and store local subscriptions in Interactive._eventHandlers, while AddClassHandler subscribes once through RoutedEvent.Raised. GetObservable/Bind(IObservable<T>) uses direct observable binding, while BindUtils.RelayBind creates Binding + Source + Path. Sources: .referenceprojects/Avalonia/src/Avalonia.Base/Input/InputElement.cs:353-389; .referenceprojects/Avalonia/src/Avalonia.Base/Interactivity/Interactive.cs:176-190; .referenceprojects/Avalonia/src/Avalonia.Base/Interactivity/RoutedEvent.cs:84-99; .referenceprojects/Avalonia/src/Avalonia.Base/AvaloniaObjectExtensions.cs:59-77; src/AtomUI.Core/Data/BindUtils.cs:8-36.