2017-01-31 3 views
0

をしました:残念ながら、私は複雑なレイアウトを持っており、それはコントロールと思われWPF XAMLコントロールは画像に変換私は、私はここにメソッドを使用して画像に変換していますコントロールを持っている間違ったレイアウト

Force rendering of a WPF control in memory

'Collapsed'は実際には出力イメージに正しく隠されていません。

が試み:

  • 呼制御のUpdateLayout複数回
  • サイズ変更ViewBoxをを使用して1つのピクセル
  • によって
  • 何かが下に整列されている場合DockPanelに影響を与えているようだ

コンバータで隠されています。

<DockPanel LastChildFill=True> 
    <Something Dock.Panel="Top" /> 
    <Something Dock.Panel="Bottom" Binding="{Binding XXXXX, Converter={StaticResource booleanConverter}}"/> 
    <Something Dock.Panel="Bottom" Binding="{Binding YYYYY, Converter={StaticResource booleanConverter}}"/> 
    <Something /> 
</DockPanel> 

すべてがXamlエディタでうまく表示されるか、実行時に実際に表示されるコントロールですべて使用されます。

答えて

0

最後に、要素にCollapsedを適用するのではなく、高さをゼロに設定するトリガを使用する必要がありました。もちろん、これは必要に応じてネストされたパネルで、余白をパディングに変換する必要があることを意味します。

この場合、私は境界コントロールを持っていたので、Visibilityプロパティを削除して、代わりにこのトリガを使用する必要がありました。

<Border> 
     <Border.Style> 
      <Style> 
       <Style.Triggers> 
        <DataTrigger Binding="{Binding XXXXX, Converter={StaticResource booleanConverter}}" Value="true"> 
         <Setter Property="Border.Height" Value="0" /> 
        </DataTrigger> 
       </Style.Triggers> 
      </Style> 
     </Border.Style> 
    </Border> 
関連する問題