Windows phone 8 如何在windows phone 8上以编程方式启动工具包日期选择器

Windows phone 8 如何在windows phone 8上以编程方式启动工具包日期选择器,windows-phone-8,datepicker,Windows Phone 8,Datepicker,我有这样一种代码的和平: <toolkit:DatePicker x:Name="SchedulerDatePicker" Grid.Column="1" Background="White" Foreground="Black"

我有这样一种代码的和平:

<toolkit:DatePicker x:Name="SchedulerDatePicker"
                                    Grid.Column="1"
                                    Background="White"
                                    Foreground="Black"
                                    BorderThickness="0.5,1,0.5,0.5"
                                    BorderBrush="#77797A"
                                    FontSize="18"
                                    Value="">
                    </toolkit:DatePicker>

                    <Button Grid.Column="1"
                            HorizontalAlignment="Right"
                            VerticalAlignment="Center"
                            Background="Transparent"
                            BorderThickness="0"
                            BorderBrush="Transparent"
                            Click="CalendarButton_Click">
                        <Image x:Name="ImageDatePicker"
                           HorizontalAlignment="Right"
                           Margin="0,0,0,0"
                           Style="{StaticResource InfoEllipseImage}"
                           Source="../../Assets/Icons/datepicker.png">
                        </Image>
                    </Button>

所有这些代码都在WindowsMobile8上项目的.xaml文件中。我需要在“代码隐藏”中打开“日历”按钮内的日期选择器“SchedulerDatePicker”。如何做到这一点?我真的不知道…

看看

这看起来像你需要的。制作一个DatePicker的子类,如那篇博文的第6点所示,使用你的子类而不是原来的DatePicker,当你想打开它时,调用ClickTemplateButton方法。哦,别忘了感谢写这篇博文的人P

由于某些原因,没有将打开选择器的方法添加到工具箱中。你可以看看它的源代码。

看看

这看起来像你需要的。制作一个DatePicker的子类,如那篇博文的第6点所示,使用你的子类而不是原来的DatePicker,当你想打开它时,调用ClickTemplateButton方法。哦,别忘了感谢写这篇博文的人P


由于某些原因,没有将打开选择器的方法添加到工具箱中。您可以查看它的源代码。

如果您试图通过编程方式显示DatePickerPage,您还可以在工具箱中调用private方法来完成此操作。像这样的

typeof(Microsoft.Phone.Controls.DateTimePickerBase).InvokeMember ("OpenPickerPage", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.InvokeMethod, Type.DefaultBinder, this, null);

如果您正以编程方式尝试显示DatePickerPage,还可以在toolkit中调用private方法来执行此操作。像这样的

typeof(Microsoft.Phone.Controls.DateTimePickerBase).InvokeMember ("OpenPickerPage", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.InvokeMethod, Type.DefaultBinder, this, null);

精彩,对救援的反思精彩,对救援的反思