When the ItemsSource of the control is populated from a background thread, users are not allowed to manually set the position of the horizontal splitter.
This issue is observed whenever the ItemsSource of the control is not initialized when loaded. If customers assign it on a later stage (e.g. async loading or even button click) the horizontal splitter will not behave by design.
Is it actually when it's populated from a background thread ? I found that it was when it was populated in an async method : async void Init() { var items = await GetItems(); MenuItems.Add(items); }