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
Индекс элемента после указанной точки.
Реализации
Комментарии
Вызовите этот метод при обработке события 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);
}
}
}