好的,所以我现在对谷歌上的这个话题感到非常沮丧,因为没有人问正确的问题。
我的 Windows Phone 8 应用程序上有一个文本框。
现在,一旦我单击该文本框,就会弹出 SIP 键盘(我得到的那部分,它是由操作系统完成的)。
现在我想要做的是,一旦我点击文本框,我不想打开 SIP,因为它会导航到另一个页面,但我不能让它成为按钮,因为用户可以在他们编辑文本框中的信息后从另一页选择数据。
现在Windows Phone文本框上是否有一个属性会限制键盘弹出?
我不能让它只读,因为那看起来不太好,然后用户会看到文本框不可编辑。
任何链接、代码或以前的问题将不胜感激!
编辑:我也尝试将焦点设置在其他一些控件上,但它发生的速度不够快,所以键盘也会弹出!,
我没有物理控件,我的控件都是动态的,取决于通过 web 服务发送的内容:
这是一个样本!:
else if (field.CtlType == WFCoreLib.DataModels.Generic.FieldAttributes.ControlType.ctFinder)
{
TextBox txtFindercontent = new TextBox();
txtFindercontent.HorizontalAlignment = System.Windows.HorizontalAlignment.Right;
//txtFindercontent.Text = field.FieldDescLoc.ToString();
txtFindercontent.SetValue(Grid.ColumnProperty, 1);
txtFindercontent.SetValue(Grid.RowProperty, count);
txtFindercontent.Width = 220;
txtFindercontent.FontSize = 20;
txtFindercontent.TextWrapping = TextWrapping.Wrap;
txtFindercontent.IsHitTestVisible = true;
//txtFindercontent.LostFocus += txtcontent_LostFocus;
txtFindercontent.Name = "fndDescription" + count.ToString();
txtFindercontent.Tag = field.MaxValue + "," + field.FieldDescLoc + "," + field.IsRequired + "," + count + "," + blockindex + "," + field.FieldID + "," + field.ColumnName + "," + field.FieldCode;
txtFindercontent.GotFocus += txtFindercontent_GotFocus;
if (field.FieldType == WFCoreLib.DataModels.Generic.FieldAttributes.DataType.dtInteger || field.FieldType == WFCoreLib.DataModels.Generic.FieldAttributes.DataType.dtDouble)
{
InputScope scope = new InputScope();
InputScopeName name = new InputScopeName();
name.NameValue = InputScopeNameValue.Number;
scope.Names.Add(name);
txtFindercontent.InputScope = scope;
}
PS:Apple/iPhone 文本框有一个限制键盘的属性。我希望 WP8 也有一个
问候