0

のソースはImage、画像を指す URL にバインドされています。

MaxHeightURL の画像がandより小さい場合MaxWidth、次のコードはうまく機能します。画像のサイズは URL とまったく同じで、ウィンドウのサイズも適切です。

MaxHeightURL の画像がおよびよりも大きい場合、画像MaxWidthの一部のみが表示されます。画像はウィンドウに収まるように縮小されません。

を削除するStretch="None"と、大きい画像は に収まるように縮小されMaxHeightMaxWidth見栄えはよくなりますが、小さい画像は拡大されて利用可能なすべてのスペースを消費し、がらくたのように見えます。

ここに私がテストしている2つの画像があります:

http://imgur.com/iaBp2Fv,fiRrTJS#0

<Window x:Class="MyNamespace.Windows.PictureWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Profile Picture" ResizeMode="NoResize" UseLayoutRounding="True" SizeToContent="WidthAndHeight" MaxHeight="750" MaxWidth="750">

    <Image Stretch="None" HorizontalAlignment="Center" VerticalAlignment="Center" Source="{Binding}" />

</Window>
4

2 に答える 2

0

コード ビハインドで、プロパティを次のように作成します。

public Point ImageSize {get;set}

コンストラクタ/Initialize() で URL から画像を取得し、ImageSizeそれに応じて設定します

ウィンドウの高さと幅を と にバインドしImageSize.XますImageSize.Y

Height="{Binding ImageSize.Y}" Width="{Binding ImageSize.Y}"
于 2013-11-07T02:12:27.077 に答える