System.ArgumentException: An item with the same key has already been added. Key: [0, Avalonia.Controls.Generators.ItemContainerInfo]
See original GitHub issueReport
System.ArgumentException: An item with the same key has already been added. Key: [0, Avalonia.Controls.Generators.ItemContainerInfo]
at System.Collections.Generic.TreeSet`1.AddIfNotPresent(T item)
at Avalonia.Controls.Generators.ItemContainerGenerator.Materialize(Int32 index, Object item) in /_/src/Avalonia.Controls/Generators/ItemContainerGenerator.cs:line 61
at Avalonia.Controls.Presenters.ItemVirtualizerNone.AddContainers(Int32 index, IEnumerable items) in /_/src/Avalonia.Controls/Presenters/ItemVirtualizerNone.cs:line 85
at Avalonia.Controls.Presenters.ItemVirtualizerNone..ctor(ItemsPresenter owner) in /_/src/Avalonia.Controls/Presenters/ItemVirtualizerNone.cs:line 17
at Avalonia.Controls.Presenters.ItemVirtualizer.Create(ItemsPresenter owner) in /_/src/Avalonia.Controls/Presenters/ItemVirtualizer.cs:line 203
at Avalonia.Controls.Presenters.ItemsPresenter.PanelCreated(IPanel panel) in /_/src/Avalonia.Controls/Presenters/ItemsPresenter.cs:line 150
at Avalonia.Controls.Presenters.ItemsPresenterBase.CreatePanel() in /_/src/Avalonia.Controls/Presenters/ItemsPresenterBase.cs:line 250
at Avalonia.Controls.Presenters.ItemsPresenterBase.ApplyTemplate() in /_/src/Avalonia.Controls/Presenters/ItemsPresenterBase.cs:line 145
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 549
at Avalonia.Layout.Layoutable.Measure(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 386
at Avalonia.Controls.Presenters.ScrollContentPresenter.MeasureOverride(Size availableSize) in /_/src/Avalonia.Controls/Presenters/ScrollContentPresenter.cs:line 254
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 549
at Avalonia.Layout.Layoutable.Measure(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 386
at Avalonia.Controls.DockPanel.MeasureOverride(Size constraint) in /_/src/Avalonia.Controls/DockPanel.cs:line 91
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 549
at Avalonia.Layout.Layoutable.Measure(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 386
at Avalonia.Layout.Layoutable.MeasureOverride(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 613
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 549
at Avalonia.Layout.Layoutable.Measure(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 386
at Avalonia.Layout.LayoutHelper.MeasureChild(ILayoutable control, Size availableSize, Thickness padding) in /_/src/Avalonia.Layout/LayoutHelper.cs:line 46
at Avalonia.Controls.Border.MeasureOverride(Size availableSize) in /_/src/Avalonia.Controls/Border.cs:line 187
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 549
at Avalonia.Layout.Layoutable.Measure(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 386
at Avalonia.Layout.LayoutHelper.MeasureChild(ILayoutable control, Size availableSize, Thickness padding) in /_/src/Avalonia.Layout/LayoutHelper.cs:line 46
at Avalonia.Controls.Presenters.ContentPresenter.MeasureOverride(Size availableSize) in /_/src/Avalonia.Controls/Presenters/ContentPresenter.cs:line 366
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 549
at Avalonia.Layout.Layoutable.Measure(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 386
at Avalonia.Layout.LayoutHelper.MeasureChild(ILayoutable control, Size availableSize, Thickness padding) in /_/src/Avalonia.Layout/LayoutHelper.cs:line 46
at Avalonia.Controls.Primitives.VisualLayerManager.MeasureOverride(Size availableSize) in /_/src/Avalonia.Controls/Primitives/VisualLayerManager.cs:line 131
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 549
at Avalonia.Layout.Layoutable.Measure(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 386
at Avalonia.Layout.Layoutable.MeasureOverride(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 613
at Avalonia.Layout.Layoutable.MeasureCore(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 549
at Avalonia.Layout.Layoutable.Measure(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 386
at Avalonia.Layout.Layoutable.MeasureOverride(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 613
at Avalonia.Controls.Primitives.PopupRoot.MeasureOverride(Size availableSize) in /_/src/Avalonia.Controls/Primitives/PopupRoot.cs:line 124
at Avalonia.Controls.WindowBase.MeasureCore(Size availableSize) in /_/src/Avalonia.Controls/WindowBase.cs:line 247
at Avalonia.Layout.Layoutable.Measure(Size availableSize) in /_/src/Avalonia.Layout/Layoutable.cs:line 386
at Avalonia.Layout.LayoutManager.Measure(ILayoutable control) in /_/src/Avalonia.Layout/LayoutManager.cs:line 285
at Avalonia.Layout.LayoutManager.ExecuteInitialLayoutPass() in /_/src/Avalonia.Layout/LayoutManager.cs:line 196
at Avalonia.Controls.WindowBase.Show() in /_/src/Avalonia.Controls/WindowBase.cs:line 170
at Avalonia.Controls.Primitives.Popup.Open() in /_/src/Avalonia.Controls/Primitives/Popup.cs:line 500
at Avalonia.Controls.Primitives.Popup.IsOpenChanged(AvaloniaPropertyChangedEventArgs`1 e) in /_/src/Avalonia.Controls/Primitives/Popup.cs:line 588
at Avalonia.Controls.Primitives.Popup.<>c.<.cctor>b__23_1(Popup x, AvaloniaPropertyChangedEventArgs e) in /_/src/Avalonia.Controls/Primitives/Popup.cs:line 150
at System.Reactive.Subjects.Subject`1.OnNext(T value) in /_/Rx.NET/Source/src/System.Reactive/Subjects/Subject.cs:line 149
at Avalonia.AvaloniaObject.RaisePropertyChanged[T](AvaloniaPropertyChangedEventArgs`1 change) in /_/src/Avalonia.Base/AvaloniaObject.cs:line 756
at Avalonia.Controls.Primitives.Popup.<>c.<.cctor>b__23_5(Popup o, Boolean v) in /_/src/Avalonia.Controls/Primitives/Popup.cs:line 42
at Avalonia.DirectProperty`2.InvokeSetter(IAvaloniaObject instance, BindingValue`1 value) in /_/src/Avalonia.Base/DirectProperty.cs:line 164
at Avalonia.AvaloniaObject.SetDirectValueUnchecked[T](DirectPropertyBase`1 property, BindingValue`1 value) in /_/src/Avalonia.Base/AvaloniaObject.cs:line 820
at Avalonia.Reactive.TypedBindingAdapter`1.OnNext(BindingValue`1 value) in /_/src/Avalonia.Base/Reactive/TypedBindingAdapter.cs:line 44
at Avalonia.Reactive.BindingValueAdapter`1.OnNext(T value) in /_/src/Avalonia.Base/Reactive/BindingValueAdapter.cs:line 16
at Avalonia.AvaloniaObject.RaisePropertyChanged[T](AvaloniaPropertyChangedEventArgs`1 change) in /_/src/Avalonia.Base/AvaloniaObject.cs:line 761
at Avalonia.AvaloniaObject.Avalonia.PropertyStore.IValueSink.ValueChanged[T](AvaloniaPropertyChangedEventArgs`1 change) in /_/src/Avalonia.Base/AvaloniaObject.cs:line 509
at Avalonia.ValueStore.NotifyValueChanged[T](AvaloniaProperty`1 property, Optional`1 oldValue, BindingValue`1 newValue, BindingPriority priority) in /_/src/Avalonia.Base/ValueStore.cs:line 366
at Avalonia.ValueStore.SetExisting[T](Object slot, StyledPropertyBase`1 property, T value, BindingPriority priority) in /_/src/Avalonia.Base/ValueStore.cs:line 266
at Avalonia.ValueStore.SetValue[T](StyledPropertyBase`1 property, T value, BindingPriority priority) in /_/src/Avalonia.Base/ValueStore.cs:line 100
at Avalonia.Controls.MenuItem.Open() in /_/src/Avalonia.Controls/MenuItem.cs:line 323
at Avalonia.Controls.Platform.DefaultMenuInteractionHandler.PointerPressed(Object sender, PointerPressedEventArgs e) in /_/src/Avalonia.Controls/Platform/DefaultMenuInteractionHandler.cs:line 413
at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e) in /_/src/Avalonia.Interactivity/EventRoute.cs:line 118
at Avalonia.Interactivity.EventRoute.RaiseEvent(IInteractive source, RoutedEventArgs e) in /_/src/Avalonia.Interactivity/EventRoute.cs:line 79
at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e) in /_/src/Avalonia.Interactivity/Interactive.cs:line 123
at Avalonia.Input.MouseDevice.MouseDown(IMouseDevice device, UInt64 timestamp, IInputElement root, Point p, PointerPointProperties properties, KeyModifiers inputModifiers) in /_/src/Avalonia.Input/MouseDevice.cs:line 235
at Avalonia.Input.MouseDevice.ProcessRawEvent(RawPointerEventArgs e) in /_/src/Avalonia.Input/MouseDevice.cs:line 144
at Avalonia.Input.InputManager.ProcessInput(RawInputEventArgs e) in /_/src/Avalonia.Input/InputManager.cs:line 37
at Avalonia.Native.WindowBaseImpl.RawMouseEvent(AvnRawMouseEventType type, UInt32 timeStamp, AvnInputModifiers modifiers, AvnPoint point, AvnVector delta) in /_/src/Avalonia.Native/WindowImplBase.cs:line 317
at Avalonia.Native.WindowBaseImpl.WindowBaseEvents.Avalonia.Native.Interop.IAvnWindowBaseEvents.RawMouseEvent(AvnRawMouseEventType type, UInt32 timeStamp, AvnInputModifiers modifiers, AvnPoint point, AvnVector delta) in /_/src/Avalonia.Native/WindowImplBase.cs:line 217
at Avalonia.Native.Interop.Impl.__MicroComIAvnWindowBaseEventsVTable.RawMouseEvent(Void* this, AvnRawMouseEventType type, UInt32 timeStamp, AvnInputModifiers modifiers, AvnPoint point, AvnVector delta) in /_/src/Avalonia.Native/Interop.Generated.cs:line 3785
--- End of stack trace from previous location ---
at Avalonia.Native.PlatformThreadingInterface.RunLoop(CancellationToken cancellationToken) in /_/src/Avalonia.Native/PlatformThreadingInterface.cs:line 90
at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in /_/src/Avalonia.Base/Threading/Dispatcher.cs:line 65
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 120
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime[T](T builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 209
at UVtools.WPF.Program.Main(String[] args) in /mnt/d/Tiago/Dropbox/Programming/C#/UVtools/UVtools.WPF/Program.cs:line 70
Category: Application
System
Operative system: Darwin 20.6.0 Darwin Kernel Version 20.6.0: Tue Jun 21 20:50:28 PDT 2022; root:xnu-7195.141.32~1/RELEASE_X86_64 X64 Processor cores: 8 Memory RAM: 7.22 / 15.94 GB Runtime: osx.11.0-x64 Framework: .NET 6.0.9 AvaloniaUI: 0.10.18
Additional information and Workflow
Can’t reproduce, come from here: https://github.com/sn4k3/UVtools/issues/554
Issue Analytics
- State:
- Created a year ago
- Comments:7 (5 by maintainers)
Top Results From Across the Web
An item with the same key has already been added
An item with the same key has already been added. And the exception details: [ArgumentException: An item with the same key has already...
Read more >Error "An item with the same key has already been added"
This scenario typically occurs if an operating system image is being used to deploy cluster nodes and that image was not correctly prepared...
Read more >Upgrading from 0.10
The IStyleable interface is now deprecated. In Avalonia 0.10.x, to override a control's style key you implemented IStyleable and added an explicit interface ......
Read more >An item with the same key has already been added
I cloned a previous project and worked about 50 hours on it. Now that everything is completed, I can't build it. The error...
Read more >Untitled
ArgumentException HResult=0x80070057 Message=An item with the same key has already been added. Key: [0, Avalonia.Controls.Generators.ItemContainerInfo] ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Was fixed after items presenter refactoring
Hi Joe,
I personally use this: https://www.reactiveui.net/docs/handbook/collections/. It’s a bit complex to learn it in the first step, but after that it works great. You still need to raise the events on the UIThread.
BR Tim