Border
を特定の幅と高さでグリッドにプログラムで追加します。wpfでオブジェクトのアスペクト比をプログラムで維持する方法
- は、グリッドが縮小またはアップするたびに国境は(
- が境界スケールを作成し、グリッド内の可能な限り大きな作るアスペクト比を維持し、記入してください:しかし、私は、次のいずれかを取得したいです
Color borderColor = (Color)ColorConverter.ConvertFromString(BorderColor); Color backgroundColor = (Color)ColorConverter.ConvertFromString(BackgroundColor); Border border = new Border(); border.BorderThickness = new Thickness(BorderSize); border.CornerRadius = new CornerRadius(TopLeftCornerRadius, TopRightCornerRadius, BottomRightCornerRadius, BottomLeftCornerRadius); border.BorderBrush = (SolidColorBrush)(new BrushConverter().ConvertFrom(BorderColor)); border.Background = (SolidColorBrush)(new BrushConverter().ConvertFrom(BackgroundColor)); border.Width = Width; border.Height = Height; border.Margin = new Thickness(10); previewgrid.Children.Add(border);
:私は私の窓のサイズを変更する場合、これは状況です現時点では)もっとグリッドの割合のように、
を最大の可能性をparticularilyありません通常の状況:
スケール状況:
だから私はそれが適切にサイズを変更し、白い矩形の内部に滞在したいと思います。ちなみに、白いグリッドには余白があります;-) ありがとうございます!
グリッドを3つの列に分ける必要があります。最初と最後の "自動"と中央の "*"です。真ん中には矩形があり、側面には境界線があります。 –
または、おそらくViewBoxが目標に達するのを助けることができます – lerthe61
@ lerthe61はそれを実際に見ましたが、正確には理解できませんでした – Markinson