私は、マウスから予定のサイズを変更できるようにする必要がある、一種のOutlookカレンダーアプリケーションを開発しています。親指での最初の試行は正しく機能しなかったので、別の方法を試しました。
私がしたことはそれです:
1)予定パネルの下部に、サイズ変更ゾーン(親指)を把握するために長方形を追加しました。アポイントメントパネルはグリッドパネルに配置されます。2)長方形のダウンイベントをインターセプトし、次のコードにイベントを送信します。
private Point startPoint;
private void OnResizeElementMouseDown(object sender, MouseButtonEventArgs e)
{
e.Handled = true;
this.MouseMove += new MouseEventHandler(ResizeEndElement_MouseMove);
this.MouseLeftButtonUp += new MouseButtonEventHandler(OnResizeElementMouseUp);
// some code to perform new height computation
Mouse.Capture(this);
}
ここで、これは親指を所有する予定パネルです。
高さを下げるとうまくいきます。しかし、増やすのはもっと難しいです。マウスを非常にゆっくり動かすと問題ありません。少し速くすると、予定パネルが省略される傾向があり、MouseMoveイベントがすべて失われます。
Mouse.Capture()はこの種の問題を解決するために提案されたと思いましたが、実際にはそうではありませんでした。
誰かが私のコードの何が悪いのか知っていますか?