How to fire Repeater's Item Resized event?


#1

Hello Friends!

Can someone demonstrate with an example of how to fire the Item Resized event of a Repeater please?

Thanks!
-Mani B


#2

Repeaters don’t have a Resized event—which I’ve always found odd. But you can wrap a repeater in a dynamic panel, keep the default option of Fit to Content, and use the dynamic panel’s Resized event. Very useful for moving widgets below or to right of a repeater when filtering / adding / deleting rows.


#3

I apologize for not being clear enough but I meant the Item.Resized event of the Repeater not the Resized event. Thanks!


#4

The dynamic panel in the repeater can be changed to achieve the goal. Please see this video. How to file repeter’s item resized event?
Although the video was produced using RP 10, RP 9 is also similar. I have created this video considering that others may have the same problem.
You can download the documentation for RP 9 or RP10 as a reference

RP 9
Q&A RP 9.rp (50.8 KB)
RP 10
Item resized.rp (2.2 MB)


#5

Thanks much, this helps!


#6

Sorry! You did explain it, I just misread it …kind of. You still can’t directly trigger the Item Resized event, but it does get triggered any time the dimensions of the repeater “cell” change. In addition to changing dynamic panel state, you could show/hide a widget or Set Size of an existing widget in the repeater. If you need to trigger it without a resulting change in row height or width you could immediately undo the change, as in,

Show MyResizerWidget
Hide MyResizer Widget

And, you could build this in automatically via a column and Item Loaded conditional case, like,

Item Loaded
Case 1
If [[Item.ResizerColumn]] equals “true”
Show MyResizerWidget
Hide MyResizerWidget
Item Resized
Set Variable Value
OnLoadVariable to “Row [[Item.index]] was resized”

Or you could build in a listener event, mapped to an otherwise unused event of a widget in the repeater, like Moved or Rotated.


#7

Thanks much as always @mbc66!


closed #8

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.