Canvas
ストレッチを可変幅で完全に水平にするにはどうすればよいですか?これは親のCanvas
です。したがって、親はなく、子のみです。WPFキャンバスを水平に伸ばす
XAML出典:それは、あなたはそれが可能な幅を埋めるために取得するには、ドックパネルを使用することができ、ブレンド にhttp://resopollution.com/xaml.txt
Canvas
ストレッチを可変幅で完全に水平にするにはどうすればよいですか?これは親のCanvas
です。したがって、親はなく、子のみです。WPFキャンバスを水平に伸ばす
XAML出典:それは、あなたはそれが可能な幅を埋めるために取得するには、ドックパネルを使用することができ、ブレンド にhttp://resopollution.com/xaml.txt
UIの最上位要素としてGrid
を使用します。これは、コンテナを満たすために伸縮します。次に、Grid
の中にHorizontalAlignment="Stretch"
とCanvas
を入れて、あなたが望むように動作します。
<Grid xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Canvas Background="Blue"/>
</Grid>
それは私のために働いた。キーは、トップレベルのUI要素です。 Grid
は既定ですべての空き領域を満たしていますが、Canvas
はコンテンツの要求と同じだけの領域を占有します。
を表示します。コントロールのドッキングパネルリストの最後の項目は、残りのスペースを埋めるように自動的に引き伸ばされます。
<DockPanel>
<Canvas />
</DockPanel>
高さと幅のプロパティを削除しようとしましたが、すべてが消えるだけです。 – resopollution
手動で高さや幅を設定しない限り、キャンバスは自動的にこれを行う必要があります。どのようなコントロールをキャンバスを置こうとしていますか?コードを投稿できますか?
私は自分のコードを投稿しました。 Canvasは、アプリケーション全体の主要な親要素です。 – resopollution
高さと幅のプロパティを削除しようとしましたが、すべてが消えるだけです。 – resopollution
私は、これは何を行う可能性が含むのActualWidth
とActualHeight
プロパティにキャンバスのWidth
とHeight
プロパティをバインドされた後、動作しない場合は、
canvas.HorizontalAlignment = HorizontalAlignment.Stretch
を試してみた推測しています窓。
canvas.HorizontalAlignment = HorizontalAlignment.StretchはC#コード内で実行されますか?私はXAMLにしかアクセスできません。 また、私はウィンドウを含んでいません=(。私はバインディング要素を実行するとSilverlightアプリケーションがクラッシュします。 – resopollution
少し遅れていますが、同じ問題を抱えている人のために: ''
問題は、Height
とWidth
を指定していることです。これらのプロパティがなければ、コントロールはデザイナで消えるように見えるかもしれませんが、キャンバスを別のコントロールに挿入すると、コントロールが適切にサイズ調整されます。
次のバージョンのWPFは 'DesignWidth'と 'DesignHeight'プロパティを持ち、他のコントロールに挿入したときに測定結果を出さずに、指定されたサイズでコントロールを表示できます。
" x:Class = "属性が必要かどうか知っていますか? – resopollution
<?xml version = "1.0" encoding = "utf-8"?> <キャンバスHorizontalAlignment ="ストレッチ "VerticalAlignment ="ストレッチ ">
はどのようにあなたがXを必要としないので、私はkaxamlにこれを貼り付け、それは私のために動作テストしている=私のために動作しませんでした:クラス属性: <グリッド のxmlns = "HTTP? ://schemas.microsoft.com/winfx/2006/xaml/presentation " xmlns:x =" http://schemas.microsoft.com/winfx/2006/xaml "> ああ –