0

私はWPFが初めてで、winformに慣れています。コンパイルされた出力がデザイン ビューと同じでない理由がわかりません。これは少し面倒で誤解を招くと思います。

要素を追加するとき、それらを赤い境界線にスナップしましたが、結果がコンパイルされたウィンドウに表示されるものと一致しません。winforms では、テーブル レイアウト、パネル、アイテムのドッキングと整列の使用に慣れています。一貫した結果を得るために WPF でこれを行う適切な方法はありますか?

デザイナー ビュー

XAML

<Window x:Class="WpfApplication4.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Rectangle Fill="#FFF4F4F5" HorizontalAlignment="Left" Height="300" Margin="10,10,0,0" Stroke="Black" VerticalAlignment="Top" Width="497"/>
    </Grid>
</Window>

出力

4

1 に答える 1

2

WPF では、ほとんどのコンテナに子の位置という概念がありません。代わりに、ほとんどのコントロールはMarginHorizontalAlignmentやなどのプロパティを使用VerticalAlignmentしてレイアウトを定義します。さらに、特定のコンテナはさまざまな機能を提供します。ドッキングが必要な場合は、DockPanel. 積み重ねられた要素が必要な場合は、 aStackPanelなどを使用できます。オンラインでいくつかのチュートリアルを検索することをお勧めします。リソースは豊富です。

あなたの場合、コントロールがコンテナーを完全に満たすようにする場合はMargin、XAML コードから、、、、および属性をVerticalAlignment削除しHorizontalAlignmentます。WidthHeight

于 2012-12-18T02:06:37.357 に答える