8

3 行 3 列の WPF Grid コントロール。問題の行の高さは自動に設定されています。最初の 2 つのセルには、動的な高さを持つ 2 つのコントロールがあります。3 番目のセルには、Grid セル内でストレッチするように自動的に設定する別のコントロールがあります。私は試しVerticalAlignment="Stretch"ましたが、それは単にグリッド行の高さをコントロールの高さに等しく設定するだけです。ここでのオプションは何ですか?

4

1 に答える 1

7

セル3で使用しているコントロールの種類はわかりませんが、ほとんどのWPFコントロールは、グリッドセル内に収まるように自動的に拡張されます。グリッドの行の高さは、セル1と2のコントロールの高さによって設定されます。

高さのデフォルトの動作が異なる、ある種のカスタムコントロールを使用している場合は、を設定できますHeight="Auto"

それでも機能しない場合は、データバインディングを実行して、セル1または2のコントロールの実際の高さを取得できます。Heightセル3のコントロールのプロパティを次のように設定します。

Height="{Binding ActualHeight, ElementName=MyControlNameFromCell1, Mode=OneWay}"

編集

より堅牢な別の方法は、行の高さのデータバインディングを実行することです。したがって、行の高さにを使用する代わりに、"Auto"上記のデータバインディングを使用します。

于 2013-02-18T16:51:32.313 に答える