問題タブ [wpf-positioning]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
6116 参照

wpf - 親キャンバスに UserControl を配置する方法

この UserControl を Canvas.Left="168", Canvas.Top="213" に配置したいと思います。

ただし、コントロールは隅に表示されます。私は何をすべきか?

このクラスの使用ポイントに値を配置すると、値は NaN として返されます。その場合、正しい左と上の値を取得するにはどうすればよいですか?

使用法:

ユーザーコントロール:

0 投票する
6 に答える
129092 参照

wpf - wpfでウィンドウ内の要素の絶対位置を取得します

ダブルクリックしたときのウィンドウ/ルート要素に対する要素の絶対位置を取得したいと思います。親内の要素の相対位置は、私が到達できるように見えるすべてであり、到達しようとしているのは、ウィンドウに対する相対的なポイントです。画面上ではなく、ウィンドウ上で要素のポイントを取得する方法の解決策を見てきました。

0 投票する
1 に答える
6921 参照

wpf - WPF グリッド列内に要素を配置するにはどうすればよいですか?

Grid コントロールの 3 列目の座標 x=20、y=5 に要素を配置するとします。どうすればいいですか?Canvas パネルを列に追加してから、コントロールを追加する必要がありますか?

0 投票する
1 に答える
1199 参照

wpf - Image と InkPresenter の間の Z オーダー

と を含むこの CustomControl がありInkPresenterますImageAdornerDecorator後で画像に装飾を追加する予定なので、画像には があります。が画像の上に描画されるように、Canvas.ZIndexImageより高く設定しました。InkPresenterInkPresenter

InkPresenter問題は、ストロークからインクを収集して表示しようとすると、画像の下に描画されることです。(以前は Snoop を使用してビジュアル ツリーを確認していましたが、InkPresenterは の上にありますImage) なぜそうなのかわかりません。Imageがの上に描かれている理由を知っている人はいInkPresenterますか? どんな助けでも大歓迎です。

私のコードは次のとおりです。

Generic.xaml

MouseDown、などのイベントを にMouseUp添付しました。後でこれらのイベントの処理を他のクラスに移動する予定です。MouseMoveInkPresenter

残念ながら、これらのイベントはキャプチャされません。これは、Imageが の上に描画され、InkPresenterではなくイベントが取得されるためInkPresenterです。これがなぜなのか誰か知っていますか?

どんな助けでも大歓迎です。

0 投票する
1 に答える
1819 参照

wpf - WPF ポップアップの ActualWidth を取得する方法

Popupコントロールに対して相対的な特定の位置に要素を配置しようとしていPlacementます。

ActualWidthそれを実現するには、ポップアップ コントロールのを見つける必要があります。ただし、ポップアップを表示する前または後にこの値を取得しようとすると (IsOpen = True)、常に 0 が返されます。

残念ながら、ポップアップのサイズをハードコーディングすることはできません。

をどのように判断できActualWidthますか?

0 投票する
4 に答える
2267 参照

.net - Wpf - プライマリ デスクトップを中心に

WPF には、ウィンドウをデスクトップの中央に配置するための「CenterScreen」値があることを知っています。ただし、デュアル モニターでは、これはあまり快適ではありません。

プライマリ モニターを中心にするにはどうすればよいですか? プライマリ デスクトップの検出、そのジオメトリの取得などの歌とダンスを実行する必要がありますか、それともより良い方法がありますか?

0 投票する
5 に答える
88212 参照

wpf - WPF ウィンドウの開始位置の変更

画面の右上に WPF ウィンドウを開きたいと思います。

現時点では、ウィンドウを開いて移動することでそれを実現できます (user32.dll の movewindow を使用)。ただし、このアプローチは、ウィンドウがデフォルトの場所で開き、完全に読み込まれてから右上に移動することを意味します。

ウィンドウの初期位置とサイズを指定できるように変更するにはどうすればよいですか?

0 投票する
2 に答える
12856 参照

wpf - WPF ウィンドウの起動場所を動的に変更する

これは、回答済みの質問 [こちら][1] に対するフォローアップの質問です。

そこでは、WPF ウィンドウの開始位置が XAML で定義されていました。今、コードでこれらのプロパティを変更する方法を知りたいですか? たとえば、次のように言えますか。

Window1.Top = ウィンドウ ロード イベント ハンドラで 40? または、開始位置を動的に変更するためにどのウィンドウイベントを設定する必要がありますか?

目標は、ウィンドウがレンダリングされる前にウィンドウの開始位置を動的に設定することです。

0 投票する
2 に答える
6880 参照

wpf - XAML で値をコントロールの絶対位置にバインドする

XAML を使用して値をコントロールの絶対位置にバインドする方法はありますか?

Lineアプリケーションで 2 つの の間に描画したい要素がありますButton。の開始点をLineの位置にバインドすることが、何らかのButton方法でこれを実現する最も簡単な方法になると考えていました。RelativeSource

0 投票する
1 に答える
6374 参照

wpf - WPF での親の寸法に対するアドナーの配置

装飾された要素の親の寸法に応じて Adorner を配置しようとしています。たとえば、テキストボックスがあります。このテキストボックスを飾りたいので、次のようになります。

装飾者をどのように配置する必要があるか http://img707.imageshack.us/img707/9840/fig1.png

テキストボックスはキャンバスオブジェクトに配置され、十分なスペースが利用できる場合は、テキストボックスの下端に沿って装飾 (半透明の丸みを帯びた正方形) を配置します。ユーザーがテキストボックスをクリックすると、装飾が開始されます。

現在、キャンバスとそのコンテンツ (テキスト ボックス) は WinForms フォームでホストされているため、WPF は ElementHost コントロールによって処理されます。

しかし、コードを実行すると、テキストボックスが初めてクリックされたときに、テキストボックスの上端に揃えられた装飾が表示されます (下の図を参照)。その後、(上の図のように)正しく配置されます。これがなぜなのか知っている人はいますか?

アドナーの位置 http://img14.imageshack.us/img14/4766/fig2v.png

このコードを以下に貼り付けました。

TextBoxAdorner.cs - これは装飾ロジックです。