C# 我如何使用 CefSharp 的 DragHandler?

C# How can i use CefSharp's DragHandler?

我试图从我的 cefsharp 浏览器中禁用任何类型的拖放。

我也尝试了他们文档中的不同代码,但到目前为止似乎都有效。

形式

chrmiumBrwsr.DragHandler = new CustomDragHandler();

-

    public class CustomDragHandler : IDragHandler
{
    bool IDragHandler.OnDragEnter(IWebBrowser chromiumWebBrowser, IBrowser browser, IDragData dragData, DragOperationsMask mask)
    {
        return false;
    }

    void IDragHandler.OnDraggableRegionsChanged(IWebBrowser chromiumWebBrowser, IBrowser browser, IList<DraggableRegion> regions)
    {
        throw new NotImplementedException();
    }
}

只需在 return false; 之前添加 dragData.Dispose(); 并将其更改为 return true;

最终代码:

public class CustomDragHandler : IDragHandler
{
    bool IDragHandler.OnDragEnter(IWebBrowser chromiumWebBrowser, IBrowser browser, IDragData dragData, DragOperationsMask mask)
    {
        dragData.Dispose();
        return true;
    }

    void IDragHandler.OnDraggableRegionsChanged(IWebBrowser chromiumWebBrowser, IBrowser browser, IList<DraggableRegion> regions)
    {
        throw new NotImplementedException();
    }