私のアプリケーションでMSChartControlを使用しています。チャートコントロールでは、チャートコントロールの選択メカニズムを使用して、ChartAreaのCursorXを使用してイメージの範囲を選択するイメージを表示します。MSChartControl選択時の奇妙な動作
SelectionRangeChangedイベントでは、ユーザーによって選択が完了したときに通知を受け取り、選択されていない領域を色付けして元の選択を非表示にしたいとします。
ないClearSelectionは(少なくとも私はこのような方法を見つけていない)がないので、私は何も選択が行われなかったときに、カーソルが最初にあった値を選択設定:塗料中
private void chartTopoAP_SelectionRangeChanged(object sender, CursorEventArgs e)
{
int Start = (int)e.NewSelectionStart;
int End = (int)e.NewSelectionEnd;
MathUtil.SwapIf(Start > End, ref Start, ref End);
mySelectedRange = new Tuple<int, int>(Start, End);
chartTopoAP.ChartAreas[0].CursorX.SetSelectionPosition(double.NaN, double.NaN);
chartTopoAP.Invalidate();
chartTopoAP.Update();
}
を方法私は自分の絵を描きます。
これは、ウィンドウとchartcontrolのサイズを変更しない限り動作するようです。
1)私は、私は別の選択
行う) 3(より大きい/小さい問題ではありません)chartcontrolのサイズを変更)ウィンドウを起動し、何か 2を選択 - >結果はその明らかであり、コントロールは内部的にいくつかのグラフィックスをバッファリングし、コントロールのサイズを変更する前のサイズのグラフを表示します。
私はラインに
chartTopoAP.ChartAreas[0].CursorX.SetSelectionPosition(double.NaN, double.NaN);
をコメントアウトした場合、それは動作します。しかし、私はどのようにして選択をクリアしますか?
おかげ マーティン
完全に作業しました。どうもありがとう。 – msedi