none
image(WPF)のMouseRightButtonDownでドラッグ&ドロップしたいです。 RRS feed

  • 質問

  • xamlでimageを配置し、画像を表示します。
    .csには、

    private void image_MouseDown(object sender, MouseButtonEventArgs e){
     Image image = sender as Image;
     string path = image.Source.ToString()
    .Replace("pack://application:,,,/WpfApplication1;component", @"C:\tmp\WpfApplication1\WpfApplication1")
    .Replace("/", @"\");
     DataObject data = new DataObject();
     data.SetData(DataFormats.FileDrop, new string[] {path});
     DragDrop.DoDragDrop(image, data, DragDropEffects.All);
    }

    と書いています。
    (1)これで、このソースを、
    private void image_MouseRightButtonDown(object sender, MouseButtonEventArgs e){
    }
    に移動すると、右ドラッグ&ドロップでドラッグ&ドロップできると期待したのですが、うまくいきません。コンパイルはできるのですが、まったく処理されていないようです。
    メッセージボックスを表示してみたので、イベントフラグはちゃんとしているようです。

    (2)ファイル名(path)を取得するのに、image.Sourceの文字列を使っているのですが、これ、もっときれいにpathだけとれないものでしょうか?

    以上2点、よろしくお願いします。

    • 移動 山本春海 2010年11月4日 8:37 より適切なカテゴリがあるので (移動元:Visual C#)
    2010年11月3日 10:53