C# 如何在UWP应用程序的紧凑覆盖模式下设置最小窗口大小

C# 如何在UWP应用程序的紧凑覆盖模式下设置最小窗口大小,c#,uwp-xaml,picture-in-picture,C#,Uwp Xaml,Picture In Picture,在我的UWP应用程序中有一个按钮,可以在图片模式下将应用程序输入图片。PIP mopde中的窗口大小可以在150 x 150和500 x 500之间更改,并且我可以在进入紧凑叠加模式时设置窗口大小。但我想限制应用程序在PIP模式下的最小窗口大小。如何将应用程序的大小限制为默认的150x150分钟大小 var applicationView = ApplicationView.GetForCurrentView(); var viewModePreference = ViewModePrefe

在我的UWP应用程序中有一个按钮,可以在图片模式下将应用程序输入图片。PIP mopde中的窗口大小可以在150 x 150和500 x 500之间更改,并且我可以在进入紧凑叠加模式时设置窗口大小。但我想限制应用程序在PIP模式下的最小窗口大小。如何将应用程序的大小限制为默认的150x150分钟大小

 var applicationView = ApplicationView.GetForCurrentView();
 var viewModePreference = ViewModePreferences.CreateDefault(ApplicationViewMode.CompactOverlay);
 viewModePreference.CustomSize = new Size(width, height);

 applicationView.SetPreferredMinSize(new Size(360, 400));
 await applicationView.TryEnterViewModeAsync(ApplicationViewMode.CompactOverlay, viewModePreference);
SetPreferredMinSize()无法解决此问题。请帮我解决这个问题。谢谢

请查看文档

允许的最小大小为192 x 48个有效像素。允许的最大最小大小为500 x 500个有效像素。如果将值设置在这些边界之外,则强制将其设置在允许的边界之内。(有关有效像素的详细信息,请参见响应设计101。)

所以,请编辑你的最大宽度150到192

private void Button_Click(object sender, RoutedEventArgs e)
{
   
    var size = new Size(192,150);
    ApplicationView.GetForCurrentView().TryResizeView(size);
}
更新

如果要限制用户在覆盖模式下调整窗口大小。当用户更改窗口大小时,请收听
SizeChanged
事件并调整pip视图的大小

private  void CoreWindow_SizeChanged(Windows.UI.Core.CoreWindow sender, Windows.UI.Core.WindowSizeChangedEventArgs args)
{
    var applicationView = ApplicationView.GetForCurrentView();
    if(applicationView.ViewMode == ApplicationViewMode.CompactOverlay)
    {

        var size = new Size(200, 200);                        
        ApplicationView.GetForCurrentView().TryResizeView(size);
    }
}

根据之前的文件,192x48和500x500之间的任何东西都是可以接受的。同样的“SetPreferredMinSize(新大小(360400))”用于应用程序的Onlaunched事件,这限制了应用程序进一步调整大小。我想在紧凑叠加模式下实现同样的效果