StackPanel.GetInsertionIndexes(Point, Int32, Int32) 方法

定义

返回指定点之间的项的索引值。

public:
 virtual void GetInsertionIndexes(Point position, [Out] int & first, [Out] int & second) = GetInsertionIndexes;
void GetInsertionIndexes(Point const& position, [Out] int & first, [Out] int & second);
public void GetInsertionIndexes(Point position, out int first, out int second);
Public Sub GetInsertionIndexes (position As Point, ByRef first As Integer, ByRef second As Integer)

参数

position
Point

要为其获取插入索引的点。

first
Int32

int

指定点前项的索引。

second
Int32

int

项在指定点之后的索引。

实现

M:Microsoft.UI.Xaml.Controls.IInsertionPanel.GetInsertionIndexes(Windows.Foundation.Point,System.Int32@,System.Int32@) M:Microsoft.UI.Xaml.Controls.IInsertionPanel.GetInsertionIndexes(Windows.Foundation.Point,int@,int@)

注解

在处理 DragOver 事件时调用此方法,以返回发生 DragOver 以及可能发生拖放和插入的两个项目的索引。

版本兼容性

GetInsertionIndexes 方法在 Windows 10 版本 1607 之前不可用。 如果 Microsoft Visual Studio 中应用的“最低平台版本”设置小于本页稍后的“要求”块中显示的“引入版本”,则必须设计和测试应用以考虑到这一点。 有关详细信息,请参阅 版本自适应代码

若要避免在以前版本的 Windows 10 上运行应用时出现异常,请不要在不首先执行运行时检查的情况下调用此方法。 此示例演示如何使用 ApiInformation 类在使用此方法之前检查是否存在此方法。

<StackPanel AllowDrop="True" DragOver="StackPanel_DragOver">
private void StackPanel_DragOver(object sender, DragEventArgs e)
{
    if (ApiInformation.IsMethodPresent("Windows.UI.Xaml.Controls.StackPanel", "GetInsertionIndexes"))
    {
        StackPanel stackPanel = sender as StackPanel;
        if (stackPanel != null)
        {
            int preceedingIndex;
            int subsequentIndex;
            stackPanel.GetInsertionIndexes(e.GetPosition(stackPanel), out preceedingIndex, out subsequentIndex);
        }
    }
}

适用于