問題タブ [actualwidth]
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.
wpf - XAML でウィンドウまたは画面のサイズに応じてグリッド列の MaxWidth を設定する方法
ウィンドウに 3 列のグリッドがあり、最初の列に GridSplitter があります。最初の列の MaxWidth を親 Window または Page Width
(またはActualWidth
) の 3 分の 1 に設定したいのですが、可能であれば XAML でこれを行うことをお勧めします。
これは、XamlPad (または同様のもの) で再生する XAML のサンプルであり、私が何をしているかを示しています。
ご覧のとおり、右の列の幅は最初の列の幅にバインドされているため、スプリッターを使用して左の列をスライドすると、右の列も同じことを行います:) 左の列を右にスライドすると、最終的にはページ/ウィンドウの半分を超えてウィンドウの右側にスライドし、列 2 と 3 を押しのけます。
列 1 の MaxWidth をウィンドウ幅の 3 分の 1 (またはそのようなもの) に設定することで、これを防止したいと考えています。これはコード ビハインドで非常に簡単に実行できますが、「XAML のみ」で実行するにはどうすればよいですか?
編集: David Schmitt は、バインドの代わりに SharedSizeGroup を使用することを提案しました。これは優れた提案です。私のサンプルコードは次のようになります。
wpf - UserControl 内の要素へのバインド
以下のようなユーザー コントロールがあるとします。コントロールActualWidth
の外側から「G1」グリッドに何かをバインドするにはどうすればよいでしょうか。
wpf - WPF UserControl は ActualWidth を公開します
ActualWidth
ユーザー コントロールのコンポーネントの 1 つのプロパティをユーザーに公開するにはどうすればよいですか?
新しい依存関係プロパティとバインディングを作成して通常のプロパティを公開する方法の例はたくさん見つかりましたが、ActualWidth
.
wpf - WPFのWidthとActualWidthの違いは何ですか?
私は現在、WPF で s を使用していますが、およびプロパティに関しては、 および と呼ばれる他の 2 つのプロパティもあることPanel
に気付きました。Width
Height
ActualWidth
ActualHeight
ActualWidth
この要素のレンダリングされた幅を取得します。これは依存プロパティです。(FrameworkElement から継承されます。)
Width
要素の幅を取得または設定します。これは依存プロパティです。(FrameworkElement から継承されます。)
参考:MSDN
2つの違いと、どちらをいつ使用するかを誰かが指摘できますか?
wpf - WPF - バインディングと RenderTransform
ActualWidth
またはを渡すコンバーターに scaleTransform をバインドしたいと思いActualHeight
ます。
ここで私がやりたいこと:
問題は、これがコンパイルされないことです:
これらのプロパティをコンバーターのパラメーターとして移動する方法を知りたいですか? 完全な Xaml で解決できますか?
助けてくれて本当にありがとうございます !
コンバーターのソースコード:
wpf - コンテキスト メニューの幅を変更するとレンダリングが低下する
私がやりたかったのは、 の幅に制限された幅を持つ をContextMenu
on にすることだけです。どうやらそれは多すぎるようです。を開き、のサイズを小さくしてから再度開くと、すべて問題ありません (が小さくなります)。を(たとえば 100 から 200 に) 増やすと、も (200 に) 増加しますが、前の(100)のみがレンダリングされます。コードで自分自身を変更し、代わりに使用しましたが、値は問題ないように見えますが、コンテキスト メニューのレンダリングは貧弱です。Button
Button
ContextMenu
Button
Width
Width
ContextMenu
Width
Width
Width
ActualWidth
wpf - WPF ポップアップの ActualWidth を取得する方法
Popup
コントロールに対して相対的な特定の位置に要素を配置しようとしていPlacement
ます。
ActualWidth
それを実現するには、ポップアップ コントロールのを見つける必要があります。ただし、ポップアップを表示する前または後にこの値を取得しようとすると (IsOpen = True)、常に 0 が返されます。
残念ながら、ポップアップのサイズをハードコーディングすることはできません。
をどのように判断できActualWidth
ますか?
silverlight - ActualWidth と ActualHeight を強制的に更新する方法 (silverlight)
Silverlight コントロールにグリッドを作成し、プログラムでキャンバスを追加し、キャンバスに Image を読み込んで表示しています。
また、キャンバスに回転を追加しています。問題は、デフォルトで回転の CenterX と CenterY がキャンバスの左上になることです。私が望むのは、キャンバスの中心を中心に回転することです。
これを行うために、Rotation の CenterXとCenterY を Images ActualWidth
/ 2 とActualHeight
/ 2 に設定しようとしましたが、少なくともすぐには読み込まれないことがわかりました。それらを強制的に更新するにはどうすればよいですか?ActualWidth
ActualHeight
画像で DownloadProgress イベントを使用しても、ActualWidth と ActualHeight が設定されることは保証されないようです。
c# - レイアウトの更新が行われたことを確認するにはどうすればよいですか?
という依存関係プロパティを持つ UserControl がありますItemsSource
。プロパティが変更されると、さまざまな要素のサイズを計算する必要があります。これを行うには、UserControlActualWidth
とActualHeight
プロパティにアクセスする必要があります。
ItemsSource
問題は、レイアウトの更新が発生する前にオブジェクトが割り当てられ、0ActualWidth
である場合です。ActualHeight
レイアウトの更新が発生する前にプロパティを変更できるようにしながら、プロパティの変更イベントに応答する前にレイアウトの更新を確実に行うにはどうすればよいですか?
wpf - ColumnDefinition.ActualWidth にバインドすると 0 が返される
これをサイダーにペーストします。
さあ、実行してください。2 番目TextBlock
は 0 を示していますが、そうすべきではありませんよね? 回避策