c# - WPF 绑定到数据模板按钮列
问题描述
我在 WPF 数据网格中创建了一个按钮列作为模板列。当您按下按钮时,它将按钮内容设置为当前日期。
<DataGridTemplateColumn Header="Date In Source">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button x:Name="BtnDateInSource" Click="DateButton" Style="{StaticResource ReceiveWorkButton}" ></Button>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<Style TargetType="{x:Type Button}" x:Key="ReceiveWorkButton" >
<Setter Property="Background" Value="Green"/>
<Setter Property="Content" Value="{Binding DateInSource}"/>
<Setter Property="IsEnabled" Value="False"/>
<Style.Triggers>
<DataTrigger Binding="{Binding DateInSource}" Value="{x:Null}" >
<Setter Property="Background" Value="#A3BF3B" />
<Setter Property="Content" Value="Receive Work" />
<Setter Property="IsEnabled" Value="True"/>
</DataTrigger>
</Style.Triggers>
</Style>
当前的问题是,由于它是一个模板列,我似乎无法将它绑定到数据源(MVVM)。
因此,用户按下按钮,它会将按钮文本更改为当前日期/时间。我现在想把它写回数据库。
我的 MVVM 可观察集合InspectionStatus
在类中SourceInspection
。
我想用 XAML 来做,但也许必须用INotifyPropertyChanged
?
DatagridContext:背后的代码:
System.Windows.Data.CollectionViewSource SourceViewSource =
((System.Windows.Data.CollectionViewSource)
(this.FindResource("SourceViewSource")));
_context.SourceInspections.Load();
SourceViewSource.Source = _context.SourceInspections.Local;
我想我想通了,使用了这个... 在按钮单击时更新 wpf datagrid
问候 K。
解决方案
推荐阅读
- amazon-web-services - 运行 AWS Redshift docker 时出现空指针异常
- php - 无论如何要找出数组是否有任何 int 类型的元素(数字)
- android - Room DB 的 onCreate 回调不会被调用,直到清理应用程序的数据
- sql - 没有小数的 SQL 数字问题
- c# - 如何在 Google OR-Tools Route Optimization 中限制每辆车的位置数量
- python - 我们可以使用 NLP 根据文本预测评分吗?
- ansible - Ansible 形成列表或分离字典
- javascript - 在Praat中拖放:如果我们要开发这个功能,该怎么做?
- c# - Visual Studio - C# 控制台应用程序 - 如何编写单元测试和可测试代码
- google-cloud-dataflow - 在更新 Dataflow 管道时强制更新 SideInput