私はResourceDictionary
に入れたDataTemplate
を持っていて、DataTemplate
にボタンがあり、このDataTemplate
をウィンドウに入れました。今私はwindowViewModel
のプロパティにボタンコマンドをバインドしたい、私はそれを行うことはできますか? これはコードです:DataTemplateのボタンをViewModelにバインドする方法は?
<DataTemplate DataType="{x:Type types:User}" x:Key="UserTemp">
<Grid >
<Button Command="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ????}, AncestorLevel=1}, Path=SelectLocationCommand}" />
</Grid>
</DataTemplate>
とWindow.xaml
<ContentControl x:Name="UserTemp" />
とWindowViewModel中で:
public ICommand SelectLocationCommand
{
get {return new RelayCommand(selectLocationCommand); }
}
void selectLocationCommand()
{
_welcomeTitle = "AA";
}
おかげでアレックスに
が、しかし、私は、ユーザークラスにSelectLocationCommandを入れたいいけない!!実際にユーザーがありますエンティティクラス! –
親ViewModelでこのコマンドを実行するソリューションがありますが、あなたのデザインに関する詳細をいくつか教えていただければ助かります。 Userが実際にEntityクラスであると言うと、それはモデルですか? – AlexDrenea
ありがとうalex、それは本当に簡単なソリューションを持っています。ウィンドウの名前とdataTemplateのbindigを設定するだけで、その名前にelementnameを指定します。 –