リージョンマネージャーを介してリージョンのレンダリングサイズを取得しようとしています。この理由は、ビューを領域に追加するたびに、視覚的にフィットすることを確認したいので、追加しようとしているビューの寸法を取得できますが、高さを取得する方法を見つけるのに苦労しています。追加しようとしている地域。
明らかに、コードの背後にあるビューから離れて、リージョンのUIElementに直接アクセスしたいと思います。
何か案は?
御時間ありがとうございます
リージョンマネージャーを介してリージョンのレンダリングサイズを取得しようとしています。この理由は、ビューを領域に追加するたびに、視覚的にフィットすることを確認したいので、追加しようとしているビューの寸法を取得できますが、高さを取得する方法を見つけるのに苦労しています。追加しようとしている地域。
明らかに、コードの背後にあるビューから離れて、リージョンのUIElementに直接アクセスしたいと思います。
何か案は?
御時間ありがとうございます
これをやろうとしないことをお勧めします。代わりに、領域がいっぱいになるのに適応できるようにすることに焦点を当てます(自動サイズ変更、スクロール、タブなど)。
ここで起こりうる予測できないことがたくさんあります。たとえば、ビューがコンテナによって決定されるコントロールがいくつかあります。リージョンに追加するビューの実際のサイズは、実際にリージョンに追加されるまでわからないため、この決定を行うのは簡単ではありません。
これがあなたの質問に直接答えることはないことを私は知っていますが、うまくいけば、それは関係なく役立つでしょう。
使用できます
_regionManager.Regions[regionName].Views.ElementAtOrDefault(0);
使用するリージョンの現在のビューを取得します。次に、そのビューの DesiredSize プロパティをチェックして、その領域の推定幅と高さを確認できます。これは通常の使用では機能するはずだと思います。
問題は、その地域のビューが常に存在する必要があるということです。ない場合は、ダミー ビューなどを使用することをお勧めします。