자체 정의 된 도구 상자에서 WebBrowser 구성 요소로 일부 컨트롤을 떨어 뜨리고 싶습니다. 이 구성 요소는 끌어서 놓기를 지원하지 않기 때문에 DragEnter, DragOver 등의 래퍼를 사용합니다 ...이 메서드는 응용 프로그램이 .NET Framework 2.0에서 작동하도록 구성되어있는 동안 잘 작동합니다.WebBrowser 구성 요소에서 항목을 놓는 중 문제가 발생했습니다.
몇 가지 이유 때문에 .NET Framework 4.0으로 업그레이드해야했습니다. 내 래퍼의 모든 끌어서 놓기 기능이 손상되었습니다. 어떤 이벤트도 트리거되지 않습니다. "navigated"와 같은 이벤트는 여전히 정상적으로 작동합니다 ...
나는 이미 가능한 대답을 검색하고 몇 가지 시도를했지만 해결할 수 없었습니다. 아무도 단서가 있습니까? 현재 주어진 래퍼 구현에 대해 생각하고있어 : Codeproject
시간 내 주셔서 감사합니다!
EDIT 1 (& 2) : 나는 답을 내 검색을 계속 다음과 같은 물건을 발견 : 우측 아이콘이 브라우저에 표시하기 때문에
의 dragEnter 이벤트
어딘가에 해고되어야한다. 이 아이콘은 DragDropEffect가 올바르게 설정된 경우에만 표시됩니다. 그러나 DragEnter 이벤트 (또는 기타)에 대한 처리기를 찾을 수 없습니다.원하는 항목을 다른 화면 부분에 놓으려고했습니다. 화면의이 부분에는 많은 구성 요소가 포함되어 있지 않으므로 드롭 액션을 구현하기가 쉽습니다. 그리고 그것은 잘 작동했습니다. 나는 eventArgs에서 객체를 가져올 수있었습니다. 하지만 여전히 웹 브라우저 구성 요소에서 작동하지 않습니다.
이러한 단서는이 문제를 해결하는 데 도움이 될 수 있습니다.
다른 방향으로 작업하여 모두 고정 시켰습니다. "dragenter", "dragleave", "dragmove"및 "drop"과 같은 HTML 코드에서 이벤트를 지정할 수 있습니다. 내 페이지의 "본문"태그에 이러한 이벤트를 추가했습니다. ScriptingObject (WebBrowser에 대해 지정됨)를 사용하면 javascript에서 보낸 이벤트를 처리 할 수 있습니다. –