2017-12-26 34 views
0

버튼 클릭으로 하나씩 TextCell에 집중해야합니다. listView.ScrollTo를 시도했습니다.단추로 ListView의 TextCell에 초점을 맞추는 방법은 무엇입니까?

private void Button_Clicked_1(object sender, EventArgs e) 
{ 
    listViewJson.ItemTapped += ListViewJson_ItemTapped; 
} 

private void ListViewJson_ItemTapped(object sender, ItemTappedEventArgs e) 
{ 
    var focusing = e.Item; 
    listViewJson.ScrollTo(focusing, ScrollToPosition.MakeVisible, true); 
} 

답변

0

먼저 색인을 정의하여 선택한 셀을 탐지하십시오. TextCell리스트 뷰의 ItemSelected 이벤트가 발광을 선택할 때 당신이 좋아 거기에 코드를 넣을 수

int selectedIndex = 0; 
private void MyBtn_Clicked(object sender, EventArgs e) 
{ 
    if (selectedIndex == dataList.Count) selectedIndex = 0; 
    myListView.SelectedItem = dataList[selectedIndex++]; 
} 

: 여기

private void MyListView_ItemSelected(object sender, SelectedItemChangedEventArgs e) 
{ 
    //try to do something 
} 

가 뒤에 내 코드는 다음과 같은 버튼 클릭을 통해 인덱스를 변경 당신이 말하는 :

ObservableCollection<string> dataList = new ObservableCollection<string>(); 

int selectedIndex = 0; 

public MainPage() 
{ 
    InitializeComponent(); 

    for (int i=0; i<10; i++) 
    { 
     dataList.Add("item" + i); 
    } 

    myListView.ItemsSource = dataList; 

    myListView.ItemSelected += MyListView_ItemSelected; 

    MyBtn.Clicked += MyBtn_Clicked; 
} 

private void MyListView_ItemSelected(object sender, SelectedItemChangedEventArgs e) 
{ 
    //try to do something 
} 

private void MyBtn_Clicked(object sender, EventArgs e) 
{ 
    if (selectedIndex == dataList.Count) selectedIndex = 0; 
    myListView.SelectedItem = dataList[selectedIndex++]; 
}