問題タブ [frameworkelement]

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 に答える
944 参照

c# - FrameworkElement の子はレンダリングされません

カスタム FrameworkElement を作成し、AddLogicalChild メソッドを使用して、FrameworkElement でもある複数の子を追加しました。

ただし、子はレンダリングされず、OnRender メソッドも呼び出されません。メソッド MeasureOverride および ArrangeOverride と同様です。

私はいくつかの調査を行いましたが、行き詰まりました。誰かが私を助けてくれるかもしれません。

これが私が作った2つのクラスです。ChildElement クラスでは、すべてのメソッドにブレークポイントを設定しました。ただし、ctor 以外のメソッドが呼び出された場合は何もありません。

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

c# - リッチテキストボックスの最後の単語がBringIntoView(表示)であるかどうかをWPFで取得する方法は?

私はwpfで作業していますが、いくつかのコンテンツを含むリッチテキストボックスがあります.コンテンツがリッチテキストボックスを超えている場合、下の境界線を非表示にしたい.リッチテキストボックス内のコンテンツの場合、下の境界線を表示したい.今、私は以下のコードを使用しています超過したコンテンツをリッチテキスト ボックスに表示します。

しかし、そのリッチテキストボックスに最後の単語が表示されたら、下の境界線を表示したい.これを達成するにはどうすればよいですか?

注:下の境界線を動的に表示する方法は既に知っていますが、最後の単語がリッチテキストボックス内に表示されるかどうかを知りたいですか?

よろしくアルジュン

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

c# - 動的プログラミングを使用した FrameworkElement および FrameworkContentElement の共通インターフェイス

私はそれを短くしようとしています: FrameworkElement と FrameworkContentElement は多くの同じ API を共有していますが、共通のインターフェースを持っていません。基本クラスとして DependencyObject のみ。

インターフェイスと 2 つのラッパー クラスを手動で追加するIFrameworkElement のこの実装に出くわしました。現在、このコードは .NET 3.5 で実装されており、著者は、.NET 4 で動的プログラミングを行う方がはるかに簡単であると述べています。

実際のコードは非常に単純ですが、各要素の長さは約 624 行です。(動的言語では、はるかに単純な 1 行の実装になります。C# 4.0 が登場します:))。

その実装がどのように見えるか、非常に興味があります。私はそれが の動的な実装にIFrameworkElement要約されるExpandoObjectDynamicObject思います. DynamicObject のカスタム実装を作成できると思いますが、それは 1 つのライナーではありません。これは動的計画法で本当に簡単にできるのでしょう? 元の 1250 ではなく、10 行でも 100 行でも構いません。

私はこのようなことを考えています:

0 投票する
0 に答える
78 参照

c# - FrameworkElements のコレクションでオブジェクトをコピー -> コピーされた要素のみを表示

フレームワーク要素を表示する「ボード」があります。問題は、「BlockContainer」オブジェクトを複製して、frameworkElements (System.Windows.Controls.Image) の新しいインスタンスを作成すると、複数のオブジェクトが表示されることです。

しかし、「BlockContainer」の新しいインスタンスを作成し、ReferenceList から FrameworkElements を含むリストを新しいオブジェクトに設定すると、新しい項目のみが表示されます。

しかし、私は参照を持っている必要があります。画像が変更された場合は、referenceList を更新したいだけです。

(すべてのコードはトリミングされています)

基本クラス

ボードアイテム

容器

BlockContainer (Visu にバインドされています)

参照ブロック

クローン ブロック (すべてのオブジェクトが表示されます)

クローン

参照付きの新しいインスタンス (新しいオブジェクトのみが表示されます)

コピー1 コピー2

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

wpf - FrameworkElement メソッドは、XAML から呼び出されたときにグリッドを描画しませんが、Window_loaded からは描画します

2011 年から完全に動作している vb6 アプリケーションを wpf で再構築しています。私のアプリは 11 個のドキュメントを処理します。vb6 では、MDI で 11 のフォームを使用しました。

wpf では、Hold と呼ばれる Canvas を使用しています。このキャンバスには、私が Doc と呼んだ FrameworkElement の 11 個のインスタンスが保持されます。

Doc には、私が Cell と呼んだクラスの図形とテキストを描画するためのメソッドがあります。Doc にセルを配置するには、グリッドを描画する Doc が必要です。そのために、true Doc がグリッドを描画する場合、ブール型フィールド (bool _showGrid;) があります。

私の問題は、Doc FrameworkElement が xaml から呼び出されたときにグリッドを描画しないことです。しかし、Window_Loaded からはそうです。

これはDoc FrameworkElementの一部です:

これは xaml で、doc の documentsReceipt インスタンスが showGrid で作成され、true に設定されています。魔女が機能していません。

を省略した場合のアプリdocumentReceipt=trueですWindow_Loaded

グリッドのないウィンドウ

これは、グリッドで showGrid ウィンドウを有効にしたときの出力です