У меня есть список с некоторыми элементами.на моей странице Page.XAML есть что-то вроде:
<ListBox SelectionMode="Single" SelectionChanged="SelectedIndexChanged" x:Name="myList" HorizontalAlignment="Center" Margin="0,0,0,0" Width="350" Height="900" BorderThickness="0,0,0,0" RequestedTheme="Default" VerticalAlignment="Top" FontSize="20" IsDoubleTapEnabled="False" IsHoldingEnabled="False" IsRightTapEnabled="False" Background="Transparent">
Я создал событие SelectedIndexChanged, чтобы проверять, когда я нажимаю на один элемент списка:
Page.XAML.cs
private async void SelectedIndexChanged(object sender, SelectionChangedEventArgs e)
{
int itemIndex = myList.SelectedIndex;
var messageDialog = new MessageDialog("What do you want to do?", "Alert!");
messageDialog.Commands.Add(new UICommand("Do It", null));
messageDialog.Commands.Add(new UICommand("Don't do it", null));
messageDialog.Commands.Add(new UICommand("Cancel", null));
var cmdClick = await messageDialog.ShowAsync();
Debug.WriteLine(itemIndex);
if (cmdClick.Label == "Do It")
{
Debug.WriteLine("Do It");
myList.Items.RemoveAt(itemIndex);
return;
}
if (cmdClick.Label == "Don't do it")
{
Debug.WriteLine("No defect");
myList.Items.RemoveAt(itemIndex);
return;
}
if (cmdClick.Label == "Cancel")
{
Debug.WriteLine("Cancel");
return;
}
}
Кажется, все правильно, но когда я нажимаю на одну кнопку диалогового окна (после выбора одного элемента списка), диалоговое окно снова появляется в общей сложности два раза вместо простого возвратак главному окну.
Есть ли что-то, чего мне не хватает?
Спасибо