3

Width 属性が 150 に達するまで動的に拡張するようにしたいと考えています。その後、ユーザーはドラッグでさらに拡張できるようにする必要があります (MaxWidth ではこれは許可されません)。

Width="150*"

同様の機能がありますが、反対方向です (最小幅で、必要に応じて拡張します)。「必要に応じて拡張」と最大の拡張幅が必要です。

XAML を使用してこれを行う方法はありますか?

4

2 に答える 2

0

ユーザーがドラッグできるようにするエッジに線を入れます。その行で Cursor プロパティを "SizeWE" に設定して、ユーザーがドラッグできることを認識できるようにします。その行から、マウス ダウン、マウス移動、およびマウス アップ イベントを処理します。MouseDown で、ライン コントロールから CaptureMouse() を呼び出し、マウスの位置を保存します。マウスの移動時に、新しいマウス位置を取得し、マウス ダウン位置からの変化を計算し、右方向へのマウス移動の量だけ 150 に制限していたコントロールの幅を増やしてから、元のマウス位置をリセットします。現在のマウス位置に。MouseUp で、ライン コントロールから ReleaseMouse() を呼び出します。

お役に立てれば。

于 2012-05-07T14:25:49.323 に答える
0

アイテムのサイズに応じて、プログラムで幅を設定できます。幅を a にバインドするGridLengthと、ユーザーに制御させるか、最大 150 まで自分で制御できます

private GridLength _marquee1Width = new GridLength(150, GridUnitType.Pixel);

これをGridUnitType.PixelGridUnitType.Auto、またはに設定できます。GridUnitType.Star

于 2012-05-31T20:09:12.407 に答える