Windows phone 8 从uwp中的文本框打开时间选择器
我想在用户每次点击我的文本框时打开一个时间选择器。可能吗?我该怎么做 我找到了一个帖子: 但我不能让它工作,因为VisualStudio说“PickerPageUri”方法不可用或不存在 我想在用户每次点击我的文本框时打开一个时间选择器。可能吗 是的,有可能 您可以使用来执行此操作,例如: XAML代码:Windows phone 8 从uwp中的文本框打开时间选择器,windows-phone-8,win-universal-app,timepicker,Windows Phone 8,Win Universal App,Timepicker,我想在用户每次点击我的文本框时打开一个时间选择器。可能吗?我该怎么做 我找到了一个帖子: 但我不能让它工作,因为VisualStudio说“PickerPageUri”方法不可用或不存在 我想在用户每次点击我的文本框时打开一个时间选择器。可能吗 是的,有可能 您可以使用来执行此操作,例如: XAML代码: 以及背后的代码: private void TextboxPointEntered(对象发送方,pointErroroutedEventArgs e) { 弹出式按钮。ShowAttach
以及背后的代码:
private void TextboxPointEntered(对象发送方,pointErroroutedEventArgs e)
{
弹出式按钮。ShowAttachedFlyout(发送者作为文本框);
}
如果要按代码添加弹出式按钮库
,可以按如下方式操作:
受保护的覆盖无效OnNavigatedTo(NavigationEventArgs e)
{
TextBox tbox=新的TextBox();
tbox.VerticalAlignment=垂直对齐中心;
tbox.PointerEntered+=tbox\u PointerEntered;
timepickerlyout timepickerlyout=新的timepickerlyout();
弹出式按钮。设置AttachedFlyOut(tbox,timepickerFlyout);
rootGrid.Children.Add(tbox);
}
private void Tbox_PointerEntered(对象发送方,PointerRoutedEventArgs e)
{
弹出式按钮。ShowAttachedFlyout(发送者作为文本框);
}
此代码中的rootGrid
表示当前页面的网格的名称
要从文本框中的时间选择器
显示所选时间,您可以这样做:
private timepickerlyout timepickerlyout=new timepickerlyout();
私有文本框tbox=新文本框();
受保护的覆盖无效OnNavigatedTo(NavigationEventArgs e)
{
tbox.VerticalAlignment=垂直对齐中心;
tbox.PointerEntered+=tbox\u PointerEntered;
弹出式按钮。设置AttachedFlyOut(tbox,timepickerFlyout);
timepickerFlyout.Closed+=timepickerFlyout\u Closed;
rootGrid.Children.Add(tbox);
}
private void Tbox_PointerEntered(对象发送方,PointerRoutedEventArgs e)
{
弹出式底座。显示附件DfLyout(tbox);
}
私有void TimepickerFlyout\u已关闭(对象发送方,对象e)
{
tbox.Text=timepickerlyout.Time.ToString();
}
我想在用户每次点击我的文本框时打开一个时间选择器。可能吗
是的,有可能
您可以使用来执行此操作,例如:
XAML代码:
以及背后的代码:
private void TextboxPointEntered(对象发送方,pointErroroutedEventArgs e)
{
弹出式按钮。ShowAttachedFlyout(发送者作为文本框);
}
如果要按代码添加弹出式按钮库
,可以按如下方式操作:
受保护的覆盖无效OnNavigatedTo(NavigationEventArgs e)
{
TextBox tbox=新的TextBox();
tbox.VerticalAlignment=垂直对齐中心;
tbox.PointerEntered+=tbox\u PointerEntered;
timepickerlyout timepickerlyout=新的timepickerlyout();
弹出式按钮。设置AttachedFlyOut(tbox,timepickerFlyout);
rootGrid.Children.Add(tbox);
}
private void Tbox_PointerEntered(对象发送方,PointerRoutedEventArgs e)
{
弹出式按钮。ShowAttachedFlyout(发送者作为文本框);
}
此代码中的rootGrid
表示当前页面的网格的名称
要从文本框中的时间选择器
显示所选时间,您可以这样做:
private timepickerlyout timepickerlyout=new timepickerlyout();
私有文本框tbox=新文本框();
受保护的覆盖无效OnNavigatedTo(NavigationEventArgs e)
{
tbox.VerticalAlignment=垂直对齐中心;
tbox.PointerEntered+=tbox\u PointerEntered;
弹出式按钮。设置AttachedFlyOut(tbox,timepickerFlyout);
timepickerFlyout.Closed+=timepickerFlyout\u Closed;
rootGrid.Children.Add(tbox);
}
private void Tbox_PointerEntered(对象发送方,PointerRoutedEventArgs e)
{
弹出式底座。显示附件DfLyout(tbox);
}
私有void TimepickerFlyout\u已关闭(对象发送方,对象e)
{
tbox.Text=timepickerlyout.Time.ToString();
}
也许您可以覆盖控制模板并手动显示弹出窗口,这是一种肮脏的方式,但可能会起作用。如果您请求UWP,为什么它会被标记为windows-phone-8?也许您可以覆盖控制模板并手动显示弹出窗口,这是一种肮脏的方式,但可能会起作用。如果您要求使用UWP,为什么要将其标记为windows-phone-8?谢谢!。您知道如何通过代码将弹出型按钮添加到文本框中吗?这是我唯一不知道如何编程的部分。谢谢格雷斯。我必须用AddHandler替换指针,因为当我从手指内侧拖动到手指外侧时,计时器选择器才显示出来。现在我看到了时间选择器,但就在我选择时间并单击ok按钮之后,我看到了正常的键盘出现。而且选择的时间不会更新文本框,我必须检查如何解决这个问题。有没有办法避免出现普通键盘?是否要禁用它?是的,您可以用事件替换我的事件。当文本框处于焦点时,键盘将显示,无法避免此情况,一种解决方法是使文本框失去焦点。对于在文本框中显示选定时间的问题,我再次更新了我的答案。事实上,我让它工作了。现在没有显示键盘。我将此属性添加到我的文本框:IsReadOnly=>true。现在它没有显示keyboard@Biribu,是的,这也是一种解决方法,但是如果文本框一直是只读的,为什么要使用文本框
,而不使用文本块
?基本上,当控件可编辑时,将显示键盘。谢谢!。您知道如何通过代码将弹出型按钮添加到文本框中吗?这是我唯一不知道如何编程的部分。谢谢格雷斯。我必须用AddHandler替换指针,因为当我从手指内侧拖动到手指外侧时,计时器选择器才显示出来。现在我看到了时间选择器,但就在我选择时间并单击ok按钮之后,我看到了普通键盘a