Q:

Control the view in MVVM

I created a project with the MVVM model, and done so with the view-first approach.
I have a TextBox in my XAML code, along with a Button to pass the data from the TextBox:
<!-- View - XAML code -->
<TextBox
    MinWidth="30"
    Name="TagId"/>

<Button
    Command="{Binding AddTagCommand}"
    CommandParameter="{Binding Text, ElementName=TagId}"
    Content="Add"/>

When I click the button, I want the TextBox cleared.
According to the Prism manual:

In some cases, the code-behind may contain UI logic code that implements visual behavior that is difficult or inefficient to express in Extensible Application Markup Language (XAML), such as complex animations, or when the code needs to directly manipulate visual elements that are part of the view.

Here's the code behind, and the viewmodel. 
//View - code behind
public partial class ApplicationStarterView : UserControl
{
    public ApplicationStarterView()
    {
    }

    public ApplicationStarterView(ApplicationStarterViewModel viewModel) : this()
    {
        DataContext = viewModel;
        InitializeComponent();
    }
}

//View model
public class ApplicationStarterViewModel : BindableBase
{
    private readonly IUnityContainer _container;

    public ApplicationStarterViewModel(IUnityContainer container)
    {
        _container = container;
        AddTagCommand = new DelegateCommand<object>(AddTag);
    }

    public ICommand AddTagCommand { get; private set; }

    private void AddTag(object input)
    {
        //Forward stuff
        //Clear TextBox
    }
}

Can I in any way squeeze in some code to do a TagId.Clear()?

A:

I'd bind the text to another property on the view model.
That way, you can skip the command parameter and the AddTagCommand can directly read the new Text property, do his adding stuff and then clear it, thus updating TagId.
Completely unrelated piece of advice: it is almost never a good idea to inject the IUnityContainer... if you need to create stuff, use factories.

