I remember trying that 'trigger once while true' condition first, and found it unreliable in my case. I could not find any obvious reason why, though. Maybe the events were too complicated, and I couldn't spot an error, but I ended up using the method that I mentioned above. That was several versions of Construct ago, though.
If the 'trigger once' works for you, then that that's pretty simple. Just add it to the condition. It does the same thing for you, without the overhead of the extra variables and events.
I have found that 'trigger once' works as expected most of the time when I use it, which is seldom.