The position of the Flyout
is determined by two properties set in the
method of the FlyoutView
The following part of the method sets the location of the Flyout
if (flowDirection == FlowDirection.LeftToRight)
_popup.SetValue(Canvas.LeftProperty, Window.Current.Bounds.Width - FlyoutSize);
Based on my understanding, by setting the Canvas.LeftProperty
should appear on the left.
The next part of the method sets the flowing direction from which the Flyout
_popup.ChildTransitions = new TransitionCollection();
Edge = (SettingsPane.Edge == SettingsEdgeLocation.Right) ? EdgeTransitionLocation.Right : EdgeTransitionLocation.Left
By setting the Edge
property of the transition to EdgeTransitionLocation.Left
, the "unfolding direction" of the
can be changed so that it appears from the left.
Based on this, I believe you could change the FlyoutView
so that they would receive an extra parameter in their
methods to decide the location of the Flyout
. Then, the aforementioned properties could be changed as explained above based on the value of this parameter.
I hope this helps,