自動生成されたパスの g コードを生成する Windows 8 アプリ (自分用) を作成しています。g コードを生成するときは、アプリ内で自分で作成および編集できるテキスト テンプレートを使用したいと考えています。{binding path} 表記に従うのは良い考えだと思ったので、私のテンプレートは次のようになります
"{binding Gcode.LinearMove} {binding Axis.X} {binding CurrentPoint.X } .... " データバインド後に "G1 X 90 ..." を与える。
すべてのオブジェクト Gcode、Axis、CurrentPoint は、コード ジェネレーターの DataContext の一部として定義できます。
私は現在、StringBuilder を使用して構築され、表示用に ListView に渡された単純な文字列を使用し、フォーマットを使用して値を置き換えていますが、もちろん、これはコードで使用するプロパティを固定し、制限的です。正規表現を使用して置き換えられた特定のテンプレート名で遊んだことがありますが、置換値はコードで凍結されていました。
編集可能なテンプレートを使用すると、実行時に使用するプロパティを動的に選択する自由度が大幅に高まると考えました。
私の質問は、既存のメトロ クラスとデータ バインディングの .net 実装を使用してこれを行うことは可能ですか、それともゼロから始める必要がありますか? バインディングは非表示および非 UI コントロール上にあることに注意してください。何千行もの gcode のリストに Textblocks を使用するのは、リソースの観点からばかげていると思いました。また、マルチバインディングがアプリで利用できないことをどこかで読みました。
アラン