WPF-MVVM: Setting UI control focus from ViewModel

Sonic Soul picture Sonic Soul · Mar 17, 2011 · Viewed 67k times · Source

What is a good practice of setting control focus in MVVM architecture.

The way I envision it, is with a property on the ViewModel that would trigger a focus change when needed. And than have the UI controls bind/listen to that property so that if it changes, appropriate focus will be set.

I see it as a ViewModel thing, because i want to set focus appropriate after a certain action was performed by the ViewModel, such as loading certain data.

What's the best practice?

Answer

Snarfblatt picture Snarfblatt · Mar 17, 2011

Use the IsFocused Attached Property as suggested in the Answer here: Set focus on textbox in WPF from view model (C#)

Then you can simply bind to a property in your viewmodel.