7

WPFウィンドウでGridSplitterを使用しています。スプリッターの上にはTreeViewがあり、下には特にテキストボックスを含むDockPanelがあります。TreeViewでアイテムを選択すると、DockPanelのコンテンツがデータバインディングを介して更新されます。

TextBoxの内容に応じて、ウィンドウの下部ペインのサイズが拡大および縮小します。高さXから開始し、GridSplitterがユーザーによってドラッグされない限り、その高さのままにしておきます。

XAMLで下部のDockPanelの高さを設定しようとしましたが、これによりDockPanelの高さが修正され、GridSplitterを移動したときにサイズが変更されなくなります。たぶん、解決策にはGrid.Row Heightsが含まれますか?

これが私のページの一般的な構造です。

Window
  Grid
    row1 Height="*":    TreeView
    row2 Height="5":    GridSplitter
    row3 Height="auto": DockPanel  // gets taller and shorter depending on its content.
      ...
      TextBox

ところで:GridSplitterをドラッグした後、サイズ変更は停止し、UIは希望どおりに動作します。

4

1 に答える 1

10

初期サイズにするグリッド行を明示的に設定しHeightます。

現在、row3 はオンになってAutoおり、コンテンツに合わせてサイズ変更されます。GridSplitter をドラッグするとすぐに、その値が行の現在の高さに置き換えられます。

于 2011-04-14T12:17:47.380 に答える