c# - WPF:在弹出窗口中打开日历,如DatePicker

标签 c# wpf mvvm datagrid

我有一个DataGrid,想在一个单元格中使用Calender。我知道一种使Calender看起来像MonthPicker的方法,这就是为什么我选择此类。

<DataGridTemplateColumn>
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding EinsatzAb, StringFormat=d}" />
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
    <DataGridTemplateColumn.CellEditingTemplate>
        <DataTemplate>
            <Calendar DisplayMode="Year" SelectedDate="{Binding EinsatzAb}" />
        </DataTemplate>
    </DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>

问题是Calendar不在弹出窗口中打开,而是在DataGrid单元中打开。

datagrid

如何使其在类似DatePicker的弹出窗口中打开?

最佳答案

尝试将其放在Popup元素中:

<DataGridTemplateColumn.CellEditingTemplate>
    <DataTemplate>
        <Popup IsOpen="True">
            <Calendar SelectedDate="{Binding EinsatzAb}" />
        </Popup>
    </DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>

关于c# - WPF:在弹出窗口中打开日历,如DatePicker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43050556/

相关文章:

c# - 表内每条记录一个堆栈面板

c# - 将简单的 xml 反序列化为 List<string>

c# - system_tray 用于接收设备删除的通知

c# - 来自 SQLiteConnection 对象的 SQLite .dump 命令

c# - 2 个 XAML 使用相同的 ViewModel 类,但有 2 个单独的实例

WPF 在容器之间拖放

wpf - 添加新记录时更新 XamDataGrid 的 ActiveDataItem

C# vs VB.Net,Shadowing 和 [Overloading (without changing the arguments)] 有什么区别

c# - WPF 中的数字数据输入

wpf - 使用Caliburn将面包屑导航添加到WPF MVVM应用