0

안녕하세요 아래 xaml 파일과 코드를 사용하고 있습니다. 나는 하나의 카테고리를 제거하면 현재 카테고리를 추가해야한다. 나는 이것에 대해 아무런 생각이 없다. 아무도 해결 방법을 말해 줄 수 없다. 이 문제.Windows phone에서 배열 항목을 추가하거나 제거하는 방법은 무엇입니까?

<StackPanel> 
     <TextBlock Text="Current categories" 
          Style="{StaticResource PhoneTextLargeStyle}"/> 

     <ListBox x:Name="AddingList" ItemsSource="{Binding name}" SelectionChanged="AddingList_SelectionChanged_1"/> 

     <TextBlock Text="Removed categories" 
          Style="{StaticResource PhoneTextLargeStyle}" /> 

     <ListBox x:Name="RemoveList" ItemsSource="{Binding name}" SelectionChanged="RemoveList_SelectionChanged_1"/> 

</StackPanel> 

내 xaml.cs 코드

private void Button_Click_1(object sender, RoutedEventArgs e) 
    { 

     NavigationService.Navigate(new Uri("/CategoriesPage.xaml?" + NotchsList11, UriKind.Relative)); 

    } 

내가 편집 버튼을 사용하고는, 내가 어떻게 카테고리 페이지로 편집 버튼에서 목록 상자 항목을 통과 제거하고 목록 상자 항목을 추가하는 방법을 할 수 있습니다.

내 넣어은 그렇게 나에게 이것에 대해가는 몇 가지 중 하나 enter image description here

답변

0

몇 가지 방법을 도와주세요 이미지 아래에 제공합니다. 한 가지 방법은 "isRemoved"부울 값이있는 단일 개체를 사용하여 방금 켜고 끄는 것입니다. 또 다른 방법은 2 개의 observablecollections에 하나는 추가 된 것을, 다른 하나는 제거 된 것을 가질 수 있다는 것입니다. 그래서 예를 들면 :

클래스 :

public class MyData 
{ 
    public bool isRemoved { get; set; } 
    public string Name { get; set; } 
} 

사용 : 당신의 제거 버튼에서

ObservableCollection<MyData> AllData = new ObservableCollection<MyData>() 
AllData.Add(new MyData(){ isRemoved = true, Name = "Data1"} 
AllData.Add(new MyData(){ isRemoved = true, Name = "Data2"} 
AllData.Add(new MyData(){ isRemoved = false, Name = "Data3"} 

AddingList.ItemsSource = AllData.Where(srch => srch.isRemoved == false); 
RemoveList.ItemsSource = AllData.Where(srch => srch.isRemoved == true); 

방금 ​​true로 isRemoved을 설정하고 추가로 false로 isRemoved 설정을 클릭합니다.

또는 ObservableCollections를 2 개 사용하여 각각에서 추가 및 제거 할 수 있습니다.

+0

안녕하세요 덕분에 – user123

+0

안녕하세요 @Wigen 두 관찰 컬렉션을 사용하지만 기본 페이지에서 목록 상자 값을 얻을 수 있습니다. – user123

+0

만약 내가 꽤 질문을 이해할 수 있습니까? 추가 또는 제거를 클릭하면 목록 상자 항목을 가져 오는 방법을 묻는 중입니까? 그렇다면 선택한 버튼의 데이터 텍스트를 확인할 수 있습니다. – Wigen