コード例 #1
0
ファイル: MshtmlSite.cs プロジェクト: ikvm/webmatrix
 public int OleDragLeave()
 {
     this._converterInfo = DataObjectConverterInfo.Disabled;
     if (this._currentDataObj != null)
     {
         this._currentDataObj = null;
         Marshal.Release(this._currentDataObjPtr);
         this._currentDataObjPtr = IntPtr.Zero;
         return this._originalDropTarget.OleDragLeave();
     }
     return 0;
 }
コード例 #2
0
ファイル: MshtmlSite.cs プロジェクト: ikvm/webmatrix
 public int OleDrop(IntPtr pDataObj, int grfKeyState, long pt, ref int pdwEffect)
 {
     int num = 0;
     Control parent = this._owner;
     while (parent != null)
     {
         parent = parent.Parent;
         Form form = parent as Form;
         if (form != null)
         {
             form.BringToFront();
             break;
         }
     }
     if (this._converterInfo == DataObjectConverterInfo.CanConvert)
     {
         DataObject originalDataObject = new DataObject(Marshal.GetObjectForIUnknown(pDataObj));
         if (this._converter.ConvertToHtml(originalDataObject, this._currentDataObj))
         {
             IntPtr iUnknownForObject = Marshal.GetIUnknownForObject(this._currentDataObj);
             Guid iid = new Guid("0000010E-0000-0000-C000-000000000046");
             Marshal.QueryInterface(iUnknownForObject, ref iid, out this._currentDataObjPtr);
             num = this._originalDropTarget.OleDrop(this._currentDataObjPtr, grfKeyState, pt, ref pdwEffect);
             Marshal.Release(this._currentDataObjPtr);
             this._currentDataObj = null;
             this._currentDataObjPtr = IntPtr.Zero;
         }
         else
         {
             pdwEffect = 0;
         }
     }
     else if (this._converterInfo == DataObjectConverterInfo.Unhandled)
     {
         num = this._originalDropTarget.OleDrop(pDataObj, grfKeyState, pt, ref pdwEffect);
     }
     this._converterInfo = DataObjectConverterInfo.Disabled;
     return num;
 }
コード例 #3
0
ファイル: MshtmlSite.cs プロジェクト: ikvm/webmatrix
 public int OleDragEnter(IntPtr pDataObj, int grfKeyState, long pt, ref int pdwEffect)
 {
     DataObject dataObject = new DataObject(Marshal.GetObjectForIUnknown(pDataObj));
     this._converterInfo = this._converter.CanConvertToHtml(dataObject);
     if (this._converterInfo == DataObjectConverterInfo.CanConvert)
     {
         this._currentDataObj = new DataObject(DataFormats.Html, string.Empty);
         IntPtr iUnknownForObject = Marshal.GetIUnknownForObject(this._currentDataObj);
         Guid iid = new Guid("0000010E-0000-0000-C000-000000000046");
         Marshal.QueryInterface(iUnknownForObject, ref iid, out this._currentDataObjPtr);
         Marshal.Release(iUnknownForObject);
         return this._originalDropTarget.OleDragEnter(this._currentDataObjPtr, grfKeyState, pt, ref pdwEffect);
     }
     if (this._converterInfo == DataObjectConverterInfo.Disabled)
     {
         pdwEffect = 0;
     }
     else if (this._converterInfo == DataObjectConverterInfo.Unhandled)
     {
         return this._originalDropTarget.OleDragEnter(pDataObj, grfKeyState, pt, ref pdwEffect);
     }
     return 0;
 }