![](/img/trans.png)
[英]Can't change Databinding in Textblock when selectedItem in listview MVVM
[英]How to change databinding of TextBlock by Click into ItemsControl MVVM?
如何单击1 ItemsControl然后它更改值文本但它不起作用
这是我在视图中的代码xaml:
<ItemsControl ItemsSource="{Binding FCsource}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Border Margin="10" Width="440" Height="220" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseLeftButtonDown">
<i:InvokeCommandAction Command="{Binding RelativeSource={RelativeSource AncestorType=Window, Mode=FindAncestor}, Path=DataContext.MouseLeftButtonDown }" >
</i:InvokeCommandAction>
</i:EventTrigger>
</i:Interaction.Triggers>
<Grid>
<TextBlock Text="{Binding Words}"></TextBlock>
</Grid>
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
这是我在ViewModel中的代码xaml:
public ObservableCollection _FCsource;
public ObservableCollection<Model.MenuItem> FCsource { get { return AddFlashCard(); } set { FCsource = value; OnPropertyChanged(); } }
private String _Words;
public string Words { get => _Words; set { _Words = value; OnPropertyChanged(); } }
public RelayCommand MouseLeftButtonDown { get; set; }
public WordsViewModel()
{
MouseLeftButtonDown = new RelayCommand(() => MessageBox.Show("Message", "Hi"));
}
private ObservableCollection<MenuItem> AddFlashCard()
{
ObservableCollection<MenuItem> listmn = new ObservableCollection<MenuItem>();
listmn.Add(new MenuItem("qwda"));
listmn.Add(new MenuItem("qwda"));
return listmn;
}
如何在DataTemplate中编写一个简单的按钮,然后在其中放置TextBlock:
<Button Command="YourRelayCommand">
<TextBlock Text="{Binding Words}" />
</Button>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.