IAxis 型の XAxis プロパティを持つグラフ作成ツールをサブクラス化しようとしています (そのため、NumericAxis、DateAxis などを指定できます)。通常ベース チャートを使用する場合、XAxis を次のように設定できます。
<chart:BaseChart>
<chart:BaseChart.XAxis>
<chart:NumericAxis VisibleRange="{Binding XAxisVisibleRange}" AxisAlignment="Bottom"/>
</chart:BaseChart.XAxis>
</chart:BaseChart>
ただし、カスタム コントロールでこの既定の軸を設定するためのベスト プラクティスが何であるかはよくわかりません。サブクラスのコンストラクターで XAxis プロパティ/バインディングを設定することにより、コード ビハインドから動作させることができます。これは機能しますが、それが「正しい」方法であるかどうかはわかりません。
WPF は初めてなので、XAML でカスタム コントロールをどこでどのように行うべきかわかりません。コントロール テンプレート、スタイル、または別の場所に配置する必要がありますか? スタイルでセッターを実行しようとしましたが、機能しませんでした (コンパイルされましたが、軸が表示されませんでした)。コントロール テンプレートから、それは認識しません<chart:BaseChart.XAxis>
。上下左右に定義された AxisAreas があり<chart:NumericAxis etc/>
、それらの内側に単純に配置すると、軸がそこに表示されますが、実際には BaseChart の XAxis プロパティを設定していないため、正しく感じられません。 NumericAxis オブジェクトの AxisAlignment プロパティをバイパスし、軸コードを入れた AxisArea に軸を明示的に配置します。
私が言ったように、私はコード ビハインドからこれを機能させています。できる限り最善の方法で実行していることを確認したいだけです。どんな助けでも大歓迎です、事前に感謝します!