34 lines
980 B
C#
34 lines
980 B
C#
using Windows.UI.Xaml.Controls;
|
|
using Windows.UI.Xaml.Controls.Primitives;
|
|
|
|
namespace NotificationFlyout.Uwp.UI.Controls
|
|
{
|
|
public class NotificationFlyoutPresenter : ContentControl
|
|
{
|
|
private Grid _root;
|
|
|
|
public NotificationFlyoutPresenter()
|
|
{
|
|
DefaultStyleKey = typeof(NotificationFlyoutPresenter);
|
|
}
|
|
|
|
public void HideFlyout()
|
|
{
|
|
if (_root == null) return;
|
|
var flyout = FlyoutBase.GetAttachedFlyout(_root);
|
|
flyout.Hide();
|
|
}
|
|
|
|
public void ShowFlyout(FlyoutPlacementMode placementMode)
|
|
{
|
|
if (_root == null) return;
|
|
var flyout = FlyoutBase.GetAttachedFlyout(_root);
|
|
flyout.ShowAt(_root, new FlyoutShowOptions { Placement = placementMode, ShowMode = FlyoutShowMode.Standard });
|
|
}
|
|
|
|
protected override void OnApplyTemplate()
|
|
{
|
|
_root = GetTemplateChild("Root") as Grid;
|
|
}
|
|
}
|
|
} |