Version

PaneDragStartingEvent Field

Event ID for the PaneDragStarting routed event
Syntax
'Declaration
 
Public Shared ReadOnly PaneDragStartingEvent As RoutedEvent
public static readonly RoutedEvent PaneDragStartingEvent
Example
This sample demonstrates using the PaneDragStarting event to initialize the cursors. The code samples assume you have a configuration similar to that shown in the xaml snippet.

For an overview of how to handle events in Visual Basic or Visual C#, see Event Handlers in Visual Basic and Visual C#. For specific information and code examples illustrating how to consume events in your application, see Consuming Events in the .NET Framework Developer's Guide.

Imports Infragistics.Windows.DockManager
Imports Infragistics.Windows.DockManager.Events

Private Sub XamDockManager_PaneDragStarting(ByVal sender As Object, ByVal e As PaneDragStartingEventArgs)
    ' these two properties can be used to initialize the default 
    ' cursors used when over an invalid or valid drop location 
    ' respectively. by default the PaneDragOver is not raised 
    ' for invalid locations so for most cases this is the only 
    ' way to initialize the invalid drop cursor 
    e.InvalidDragActionCursor = Cursors.No
    e.ValidDragActionCursor = Cursors.Arrow

    ' you can have the PaneDragOver get raised for all drop 
    ' locations by setting RaisePaneDragOverForInvalidLocations 
    ' note however that this means that the docking indicators 
    ' will be shown over all panes - even those for which the 
    ' dragged panes properties do not allow it by default. 
    e.RaisePaneDragOverForInvalidLocations = True

    ' you can see the panes that will be dragged 
    ' and if necessary, you can prevent the drag 
    ' operation from starting. 
    'e.Cancel = true; 
    For Each pane As ContentPane In e.Panes
    Next
End Sub
using Infragistics.Windows.DockManager;
using Infragistics.Windows.DockManager.Events;

private void XamDockManager_PaneDragStarting(object sender, PaneDragStartingEventArgs e)
{
	// these two properties can be used to initialize the default
	// cursors used when over an invalid or valid drop location
	// respectively. by default the PaneDragOver is not raised
	// for invalid locations so for most cases this is the only
	// way to initialize the invalid drop cursor
	e.InvalidDragActionCursor = Cursors.No;
	e.ValidDragActionCursor = Cursors.Arrow;

	// you can have the PaneDragOver get raised for all drop
	// locations by setting RaisePaneDragOverForInvalidLocations
	// note however that this means that the docking indicators
	// will be shown over all panes - even those for which the
	// dragged panes properties do not allow it by default.
	e.RaisePaneDragOverForInvalidLocations = true;

	// you can see the panes that will be dragged
	foreach (ContentPane pane in e.Panes)
	{
		// and if necessary, you can prevent the drag
		// operation from starting.
		//e.Cancel = true;
	}
}
<igDock:XamDockManager PaneDragStarting="XamDockManager_PaneDragStarting">
    
<igDock:XamDockManager.Panes>
        
<igDock:SplitPane>
            
<igDock:ContentPane Header="Test Pane" AllowDockingRight="False" />
        
</igDock:SplitPane>
        
<igDock:SplitPane igDock:XamDockManager.InitialLocation="DockedRight">
            
<igDock:ContentPane Header="Don't Allow" />
        
</igDock:SplitPane>
    
</igDock:XamDockManager.Panes>
</igDock:XamDockManager>
Requirements

Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also