具体的には、コードを更新しました。お役に立てば幸いです。最初に画面サイズを取得します (つまり、幅と高さ)
var width = System.Windows.Application.Current.Host.Content.ActualWidth;
var height = System.Windows.Application.Current.Host.Content.ActualHeight;
StackPanel を作成して背景色を追加し、デバイスの画面解像度に従って StackPanel のサイズを変更します。
StackPanel stackPanel = new StackPanel();
stackPanel.Background = new SolidColorBrush(Colors.Gray);
stackPanel.Height = height / 4;
stackPanel.Width = width / 2;
最後にポップアップを作成し、それを子として StackPanel に追加します。
Popup Popup1 = new Popup();
stackPanel.Children.Add(Popup1);
ContentPanel.Children.Add(stackPanel);
Popup1.IsOpen = true;
これで完了です。ここで画面解像度を取得したため、必要に応じて StackPanel のサイズを変更します。