Allow components event to change states of other components
New states feature is excellent but restricted for self components interaction. In many cases, especially in web and desktop apps, there are cases where a component event should affect another element on screen.
It would be a super powerful option to allow a component event to change states of another component.
Currently if i use component A inside component B, i can't use A to change state of B, even though A is part of B.
Josh Oberst commented
How is this not a thing?
Not having this feature it makes prototyping anything but the simplest UIs very difficult. I was honestly shocked it wasn't already part of the product.
Yes, please implement this asap. It's such an essential feature in order to build a functional prototype for a desktop app.
Andrew Hart commented
I suggest this is done by adding the ability to Trigger a component state change when another component on the artboard changes state.
I have already made a request to allow a component to change state based on a Time event, so both requests could be grouped into a general upgrade to the component state change trigger mechanism.
I would love to be able to to handle an object behavior from another one.
Examples : Tap an icon to change another component state or to reduce the opacity of a layer... etc..
It would decrease the number of artboards we use in our designs and simplify our work.
Please add this feature. This is necessary for prototyping.
Please do it. I find it hard to believe that it's not already available. Other products have been able to do it for years. Without it, changing states is almost useless unless it is only the simplest of toggle switches.
Honestly, people know what a toggle switch looks like when it's on vs off, and people know what checkboxes look like when on vs off, so that is something you really don't need to prototype on its own. It's a lot of extra work with almost no reward.
Now, what ELSE happens when you turn something off or on, THAT is what matters and why you need to be able to show state changes. Otherwise, state changes are kind of unnecessary, or at least superfluous.
Please do it ! 🏆
I wanted to have an image with hotspots on which I can clic to show an info box. I can achieve that with states and shapes but if I wanted to use a component instead of a shape to have the hover effect, it wouldn't allow me to select a state, only another page.
Bartolomeo D'Alia commented
Absolutely a needed feature!!
It will saves a lot of time!
I have Component A and Component B, both with 2 States.
I would like to click on Component A and switch from State 1 to State 2. But in addition I want wire Component A with Component B and switch Component B from State 1 to State with the same click (on Component A)
-> Click on Component A should change not only the own State but also the state of another component.
Regardless of the artboard - Click on artboard 1 on Component A it should open artboard 2 and already change the state of Component B on artboard 2 to a defined state.
Sarah Sorensen commented
Yes please, this would allow me to eliminate the number of needed artboards
Yes!!! Can only imagine how many artboards I'd be able to cut from my prototype by encapsulating many interactions within a single board vs trying to manage countless combinations of boards and flows. Would be great to be able to go beyond happy path prototyping with XD and I think this feature would go a long way to unlocking that potential.
Martin Kleis Sundstrøm commented
Came to the same conclusion after trying EVERY method to make a set of 3 interlinked radio buttons. There is just NO WAY to make a radio button set.
This might work:
1) Select a component.
2) Select one of its states.
3) Click "affect other components" checkbox.
4) Choose any other component on artboard from resulting option menu. The states of that component appear.
5) Choose one of the component's states.
6) Click "Affect another component" to repeat.
This could do stuff like "if checkbox is filled, change NEXT button from dimmed to active" or "if radiobutton A is on, turn of radiobutton B and C"
Nathaniel Platts commented
tried to create vertical multi-level menu side bar....
Not possible :(
Axure saves the day
Erico Estrella commented
Yes please, I'm not feeling alone now
The fact that this is not present in XD is making our whole team dismiss this tool.
I've been able to do this type of interactivity since 2016 in UXPin—bummer.
The ability to have a component (nested or non nested) link to another components state. Currently components only show states in which they can be linked to that are directly part of that component and it's states or artboards but I have found numerous occasions where it would be helpful to have those options but link to another components state within a component. Having to create unnecessary invisible hotspots on the outer component is tedious and seems like it could be much easier to have children states of another component available.
Oh, yes please! Need this!