Pro*_*ton 1 wpf binding wpf-controls
我需要在我的datagrid标题中为其中一列提供一种日期选择器.当用户从此标题日期选择器中选择日期时,系统应将此日期绑定到具有日期的所有列单元格.
有办法吗?
最好的方法是将标头的dataTemplate设置为包含DatePicker的自定义模板,DatePicker的Date绑定到DataGrid的DataContext属性之一,然后将此特定列中的单元格绑定到同一属性.
这样的事情:
<DataGrid>
<DataGridTextColumn Binding="{Binding DataContext.myDate, RelativeSource={RelativeSource AncestorType=DataGrid}, Mode=OneWay}" >
<DataGridTextColumn.HeaderStyle>
<Style TargetType="{x:Type DataGridColumnHeader}">
<Style.Setters>
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<DatePicker SelectedDate={Binding myDate, Mode=TwoWay} />
</DataTemplate>
</Setter.Value>
</Setter>
</Style.Setters>
</Style>
</DataGridTextColumn.HeaderStyle>
</DataGridTextColumn>
</DataGrid>
Run Code Online (Sandbox Code Playgroud)
免责声明:我没有尝试过,也不确定{Binding DataContext.myDate, RelativeSource={RelativeSource AncestorType=DataGrid}.你可能会做一些调整,但总的来说,这应该会让你开始如何进行