0

私は、すべての子を取得してViewBox内にラップし、特定の均一なサイズに縮小できるようにするパネルを作成することを検討しています。

これが可能かどうかはわかりませんが、お願いしたいと思いました。これが可能かどうかわからない理由は、Panelにxamlが関連付けられていないためです。彼らは子供たちをコードで測定して配置します。任意のヒント?


十分に明確ではなかった後、私はより具体的になると思います:

子供たちをアレンジして測定したいので、パネルが欲しいです。

  1. メジャーは、すべての子要素の平均の高さ/幅を見つけます。
  2. アレンジはそれらをグリッドのようなパターンに配置し、平均的な高さ/幅にスケーリングします。私はそれらをクリップバウンドにしたくありません、私はそれらを適切にスケールアップまたはスケールダウンしたいです。

私はすでに平均の高さ/幅を見つけるために測定オーバ​​ーライド機能を動作させていますが、アレンジオーバーライドでそれらをスケーリングする方法を理解できません。

4

2 に答える 2

2

パネルをどのように機能させるかを完全に指定していないため、サンプルパネルを提供することはできませんが、実行したいことと同様のことを行う作業パネルを紹介することはできます。

Viewboxこの例では、パネルの子を自分でスケーリングするだけで、をシミュレートできることがわかります。私が言ったように、それらをどのようにスケーリングしたいかはあなた次第です。

于 2011-04-21T05:28:00.650 に答える
0

更新後も、Markusに同意します。カスタムパネルは必要ないようです。必要なのは、ItemsPanelとしてUniformGridを使用し、ItemsContainerとしてViewBoxを使用するItemsControlです。UniformGridは、アイテムコンテナの配置方法を決定します。ViewBoxは、各アイテムのストレッチとスケールを処理します。

于 2011-04-21T13:34:49.670 に答える