簡體   English   中英

C#-Xamarin表單在切換時刪除列表視圖項

[英]C# - Xamarin forms remove listview item on toggle

因此,我想在切換的列表視圖中刪除該項目。 我有這樣的列表視圖:

結果

現在,我希望在單擊要選擇的內容時將其從列表視圖中刪除,但是用戶必須首先彈出一個提示,其中指出用戶是否確實確定是否可以刪除該項目。

這是我現在擁有的代碼:

private async void Switch_Toggled(object sender, ToggledEventArgs e)
        {
            Tasks task = (sender as Switch).BindingContext as Tasks;
            await ApiManager.UpdateTasksFromListAsync(task);
        }

這只是更新API上的值。 但是,如何從列表視圖中刪除/隱藏它呢?

這是xaml代碼:

<ListView x:Name="lvwDetailPage" SeparatorVisibility="None">
        <ListView.ItemTemplate>
            <DataTemplate>
                <ViewCell>
                    <Grid>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="70" />
                            <ColumnDefinition />
                        </Grid.ColumnDefinitions>
                        <Grid.RowDefinitions>
                            <RowDefinition />
                        </Grid.RowDefinitions>

                        <Switch IsToggled="{Binding completed}" Grid.Column="0" Toggled="Switch_Toggled" />
                        <Label Grid.Column="1" Text="{Binding title}" TextColor="#212121" VerticalOptions="Center" Margin="10,0" />

                    </Grid>
                </ViewCell>
            </DataTemplate>
        </ListView.ItemTemplate>
    </ListView>
    ObservableCollection<Tasks> TaskList;

    private async Task GetData(long id)
    {
        List<Tasks> tasks = await ApiManager.GetTasksFromListAsync(id);

        TaskList = new ObservableCollection<Tasks>(tasks);

        lvwDetailPage.ItemsSource = TaskList;

        lvwDetailPage.ItemSelected += LvwDetailPage_ItemSelected;
    }

    private async void Switch_Toggled(object sender, ToggledEventArgs e)
    {
        Tasks task = (sender as Switch).BindingContext as Tasks;

        if (task != null)
        {
            await ApiManager.UpdateTasksFromListAsync(task);
            TaskList.Remove(task);
        }          
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM