私は、ResourceDictionaryで追加されたRectangleGeometryとしてクリッピングマスクを持つBorderを持っています。私はRectangleGeometryの長方形の背後にあるコードの値に応じて高さを変更したいが、高さだけをバインドする方法はわからない。RectangleGeometryの高さのバインド
クリップでボーダー:
<Border Width="50" Height="50" Background="#F0F1F3" CornerRadius="4">
<Border.Clip>
<RectangleGeometry Rect="0, 0, 50, 10" />
</Border.Clip>
</Border>
私はここに同様の質問にいくつか答えが見つかりました: https://social.msdn.microsoft.com/Forums/vstudio/en-US/7c7dbdc9-3fdb-4893-ab1f-082df9594f25/rectanglegeometry-binding?forum=wpf をし、同じことを行うことを試みた - プロパティを多追加しますが、何をすべきか分かりません今のところ:
<RectangleGeometry.Rect>
<MultiBinding Converter="{StaticResource Converter}">
<Binding ElementName="mainGrid" Path="Width"/>
<Binding ElementName="mainGrid" Path="Height"/>
</MultiBinding>
</RectangleGeometry.Rect>
ここで原点を定義する方法は?どのように幅と高さの値を指定するのですか? ElementNameには何を入れますか?
MultiBindingのコンバータの変換方法からのRectを返します入力バインディングが生成するすべての値。単一の値にバインドしたい場合は、MultiBindingは必要ありません。通常のバインディングのコンバーターは、ソース値を適切なRectに変換できます。 – Clemens
「コードビハインドからの価値」はどのように定義されていますか? – mm8
public int DownloadProgressAsImageHeight { //表示ボックス内の画像の高さのポイントへのパーセンテージを変換します。 get {return(int)((DownloadProgress/100)* _iconBoxHeight); } } – Val