問題タブ [inkcanvas]
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 - InkCanvas への MVVM バインディング
どうやら通行止めになったようです。Prism で MVVM を使用しており、インク キャンバスを必要とするビューがあります。ViewModel からビューにバインドされている StrokeCollection を作成しました。ビューモデルからコレクションを設定できますが、ユーザーが描画している間、ビューモデルに変更が反映されません。これを機能させる方法はありますか?
私のViewModelの私のプロパティは次のとおりです:
これが私の XAML バインディング行です。
何らかの理由で、明らかに InkCanvas は ViewModel に変更を通知しません。
wpf - WPFInkCanvas-「署名済み」かどうかを判断する方法
WPF InkCanvasコントロールを使用して、TabletPCアプリケーションで署名をキャプチャしています。
私の要件の1つは、アプリケーションが実際に「署名」されているかどうかを検証することです。現在、InkCanvasのStrokesコレクションをチェックしてこれを行っています。ストロークが0の場合、ユーザーが「署名」していないことがわかります。
ただし、ユーザーが1つのスラッシュ、または1つのドットを入力した場合、これはストロークとしてカウントされ、署名が実際には有効ではない場合でも、検証テストに合格します。
このためのより良いテストを構築する方法についてのアイデアはありますか?確かに、有効な署名とそうでない署名の使用例はかなりあいまいですが、明らかに悪い署名を排除しようと思います。
それとも、これは単純な方法で解決できないのでしょうか?
wpf - InkCanvas での WPF 絶対配置
に長方形を配置しようとしていInkCanvas
ます。私は次の方法を使用しています。残念ながら、長方形を追加すると、 に表示され(0,0)
ます。左のプロパティがゼロではないかどうかを確認するためにクエリを実行すると、0
ゼロ以外の値が返されます。これがなぜなのか誰か知っていますか?
乾杯、
ニルー
wpf - WPFのInkCanvas内の要素のXY座標を取得します
を介してプログラムで子を追加したInkCanvasがありますC#
。InkCanvas.LeftProperty
またはで設定されていませんInkCanvas.TopProperty
。要素のこれらのデフォルトのX値とY値を取得することは可能かどうか疑問に思いました。現在、をチェックすると、設定されていInkCanvas.LeftProperty
ないのでInkCanvas.TopProperty
返さNaN
れます。これは可能ですか?助けてくれてありがとう。
乾杯、
ニル
wpf - コードでインクキャンバスにテキストを追加するには?
C# コード (Xaml ではない) で WPF を使用して InkCanvas にテキスト (ラベルなど) を追加したいと思います。
どのように可能ですか?ありがとうジョナサン
wpf - InkCanvas で削除された要素を取得する
ユーザーが削除した要素にアクセスできる方法があるかどうか疑問に思いました。たとえば、InkCanvas が [選択] に設定されている場合、ユーザーは要素を選択して [削除] を押して削除できます。彼らがそれを削除した場合、このアイテムに到達する方法はありますか? どんな助けでも大歓迎です。
乾杯、
ニルー
アップデート
@ドリュー:そうではありません。たとえば、InkCanvas に画像があるとします。この画像にはいくつかのストロークが添付されています。ユーザーが画像を選択して削除すると、ストロークが削除されます。
c# - Databind InkCanvas の子
WPF アプリケーションには、実行時に表示および編集 (サイズと位置) したいオブジェクト (画像上の領域) の ObservableCollection があります。
オブジェクトを表す Rectangles を使用して Select モードで InkCanvas を使用したいのですが、データ バインディングを直接サポートしていないようです。
InkCanvas の Children コレクションを ObservableCollection に何らかの方法でバインドすることは可能ですか?
wpf - InkCanvas の描画方法を変更するにはどうすればよいですか?
この例を検索しましたが、遭遇したものは、Width、Height、Color などの InkCanvas DefaultDrawingAttributes の設定など、より単純なものに焦点を当てているようです。これには多くの資料がないようです。
たとえば、マウス ボタンを押したままにすると、線が描画されます。線の代わりに楕円を描きたい場合、または線の始点と終点の間のサンプル ポイントの周りに楕円を描きたい場合はどうすればよいですか?
StrokeCollected イベントで新しいポイントを取得できることはわかっていますが、それ以上はどこに行けばよいかわかりません。この男は msdn のコードを動かしたように見えましたが、私にはできませんでした。私は XAML を使用してインターフェイスを構築する方法を知っているだけで、サンプルもないようです。
編集
thisIsNotNice という名前の StrokeCollection クラス変数を作成し、コンストラクターで初期化して、次のようにしました。
しかし、それはうまくいきません。楕円は描画されますが、マウスで描画された線はまだそこにあります。また、何らかの理由で、最初は楕円だけを描画して正常に動作しますが、その後は楕円と線の両方を描画します。しかし、代わりにこれを行うと:
線は画面に保持されません。したがって、上記のコードでそれらが消去されない理由がわかりません。
私がこれを行う場合:
また、キャンバスに線画が含まれていることもわかります。
コレクションに追加された後にストロークを消去することは理想とはほど遠いですが、少なくとも私が望むことはできます. 線の色を背景と同じにすることはできますが、楕円だけを取得することはできません。それらを別のコレクションにコピーすることもできますが、それはひどいものです。