AvaloniaUI Пример DoDragDrop ()? - PullRequest
0 голосов
/ 20 апреля 2020

Я хочу сделать что-то вроде перетаскивания из текстового блока моего приложения, написанного с помощью AvaloniaUI, в Блокнот, чтобы открыть текстовый файл. Документация не содержит подробной информации или примеров. Я попытался следующий код для передачи "C: \ Windows \ win.ini" в Блокнот, но не работает. Как заставить это работать?

    private void InitializeComponent()
    {
        AvaloniaXamlLoader.Load(this);

        var DragTest  = this.Get<TextBlock>("DragTest");
        DragTest.PointerPressed += DragTest_PointerPressed;
    }

    private void DragTest_PointerPressed(object sender, Avalonia.Input.PointerPressedEventArgs e)
    {
        if (e.MouseButton == MouseButton.Left)
        {
            Debug.WriteLine("Mouse down");
            var data = new DataObject();
            data.Set(DataFormats.FileNames, new string[] { @"C:\Windows\win.ini" });
            DragDrop.DoDragDrop(e, data, DragDropEffects.Copy);
        }
    }
...