問題 §
Win10をV1709に上げたらContentDialogのサイズ制御が失敗するようになった。
具体的には以下の2つの症状がある。
- ダイアログのレイアウトの元サイズが大きい場合、巨大ダイアログを作成して、その後でウィンドウサイズを徐々に縮小していこうとする場合がある (ContentDialog作成直後にサイズ変更イベントが大量の連続して送られてくる)
- ダイアログのレイアウトの元サイズが小さい場合、MinWidth/MinHeightが無視されてMinWidth/MinHeightより小さなContentDialogを作成する
原因 §
不明 (V1709の非互換性と思われる)
対策 §
最初の問題への対策としては、ContentDialogのMaxWidth/MaxHeightをコンストラクタで親ページのサイズに設定する
2番目の問題への対策は不明だが、放置しても致命的な問題は起きないと思われる。
感想 §
「上記対策を打ったMega PicturesはWindows Storeに提出した」
「緊急対策だね」
「根本的な対策は別途考える」
「今回の問題の感想は?」
「ContentDialogはもともと出来が良くない。ボタン数決め打ちだし、設計が硬直的で使い勝手を落とす。見栄えも良くない。それでも、それが標準なら使う方が安全だろうと思ったが、今回は安全ですらなかった」
「ひぇ~」
「ContentDialogを使い始める前に利用していたもっと原始的な方法に回帰しようかと考えているところだよ」