.net - 自定义 WPF DatePickerTextBox 模板

标签 .net wpf xaml datepicker textbox

我正在尝试使用自定义 TextBoxDatePicker控制,但我无法将弹出日历中的日期绑定(bind)到 TextBox .我不想为整个 DatePicker 设置样式除非我必须,否则 DatePickerTextBox有它自己的控制,所以必须有一种方法来改变它。下面的代码是我作为开始的代码:

<Style TargetType="{x:Type DatePickerTextBox}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type DatePickerTextBox}">
                <TextBox x:Name="PART_TextBox" Text="{Binding Path=SelectedDate}" />
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

我可能没有正确绑定(bind),或者 PART_TextBox可能不正确,因为它不是 DatePicker 的一部分模板本身。

有人请帮忙! :)

提前致谢!

最佳答案

试试这个:

<DatePicker>
    <DatePicker.Resources>
        <Style TargetType="{x:Type DatePickerTextBox}">
            <Setter Property="Control.Template">
                <Setter.Value>
                    <ControlTemplate>
                        <TextBox x:Name="PART_TextBox" 
                                    Text="{Binding Path=SelectedDate, RelativeSource={RelativeSource AncestorType={x:Type DatePicker}}}" />
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </DatePicker.Resources>
</DatePicker>

关于.net - 自定义 WPF DatePickerTextBox 模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3636310/

相关文章:

c# - 创建连接文件的最佳实践

.net - 反射 GetExecutingAssembly 正在抛出 StackOverflow

wpf - RichTextBox 在不可见时滚动到结束不起作用

c# - VSIX 窗口 - 执行 ICommand 的快捷键

c# - 在当前上下文错误中不存在

c# - 如何将 ValueConverter 应用于基于约定的 Caliburn.Micro 绑定(bind)示例?

.net - IronPython 性能

javascript - 使用 Javascript/jQuery 动态填充下拉列表

wpf - AvalonDock + UserControl + DataGrid + ContextMenu 命令路由问题

c# - DataGrid 行内容垂直对齐