Controlling Repeater Selected Item with External Widgets

repeater-widget

#1

Hi,

I have a repeater that I want to control with either the mouse or a back/next button to select a repeater item. This is essentially a tabbed interface with each repeater item being a tab. For some reason, next works fine, but back does not.

Using the expression [[Item.index == SelectedTab - 1]] does not work, but using [[Item.Index == SelectedTab + 1]] works fine. I’m using this to mark the adjacent repeater item and then using a listener in the repeater to fire the OnItemLoad event which handles updating the global variable as well as a few other things. When I look at the global variable in the console, the next button increments the value, but the back button does not decrement it.

I have no idea why this is happening. Unfortunately I can’t share the RP file as it contains proprietary designs. Any help would be appreciated.


#2

Hi!

It’s hard to tell what’s happening. Are these expressions conditions of the listener? If so, are you equating both expressions to TRUE? E.g.,

If (value) [[Item.index == SelectedTab -1]] is equal to true

If it’s not that, a screenshot of the relevant code would be helpful, even if you can’t share the file.


#3

I’m using these expressions to mark a row for updating. Here’s the On Click of the back button:

image

The repeater has a Selected column that I use to track which item is currently selected. So I mark the previous row, remove selected from all the rows, then update the marked row. The listener forces the OnItemLoad of all the items which has a condition to check if the new row is selected. Again, this all works as expected when I’m using a + instead of a -. Here’st he OnItemLoad of the repeater item:

image