Click on the button in the phone LongListSelector Windows 8
I have a LonglistSelector that displays a list of items, each item has a button:
My LongListSelector has a SelectionChanged event
private void MyLLS_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
var item = (MyItemType)MyLLS.SelectedItem;
// Job 1 goes here
}
and every button on an element in LLS has a click event:
private void btDownload_Click(object sender, RoutedEventArgs e)
{
var button = (MyItemType)(sender as Button).DataContext;
// Job 2 goes here
}
The problem is that when I click the button, it processes job 2 and after that it processes job 1. So how can I just do job2 of the button event?
+3
source to share
1 answer
You have to use a boolean flag to define it, for example:
bool isBtnClicked = false;
private void MyLLS_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
// check if button is clicked, if so, return and reset the isBtnClicked flag.
if (isBtnClicked)
{
isBtnClicked = false;
return;
}
var item = (MyItemType)MyLLS.SelectedItem;
// Job 1 goes here
}
private void btDownload_Click(object sender, RoutedEventArgs e)
{
var button = (MyItemType)(sender as Button).DataContext;
// set it true when button clicked
isBtnClicked = true;
// Job 2 goes here
}
+1
source to share