Windows phone 7 如何删除wp7中的数字破折号
我正在制作电话号码盒。我已经制作了Windows phone 7 如何删除wp7中的数字破折号,windows-phone-7,Windows Phone 7,我正在制作电话号码盒。我已经制作了(888)888-8888的格式。但现在我想在后太空操作。如果有人给错了号码,他可以编辑它 问题是,当我试图从右侧删除最后一个数字时。它停止从末尾删除4个数字后的数字。它向我显示如下结果(888)888- 这是我的数字和破折号格式代码 if (phonebox.Text.ToString().Length == 1) { phonebox.Text = "(" + phonebox.Tex
(888)888-8888的格式。但现在我想在后太空操作。如果有人给错了号码,他可以编辑它
问题是,当我试图从右侧删除最后一个数字时。它停止从末尾删除4个数字后的数字。它向我显示如下结果(888)888-
这是我的数字和破折号格式代码
if (phonebox.Text.ToString().Length == 1)
{
phonebox.Text = "(" + phonebox.Text.ToString();
phonebox.Select(phonebox.Text.Length, 0);
}
else if (phonebox.Text.ToString().Length == 4)
{
phonebox.Text = phonebox.Text.ToString() + ")";
phonebox.Select(phonebox.Text.Length, 0);
}
else if (phonebox.Text.ToString().Length == 8)
{
phonebox.Text = phonebox.Text.ToString() + "-";
phonebox.Select(phonebox.Text.Length, 0);
}
这是我尝试过的解决方案,但不确定它是否有效
else if (phonebox.Text.ToString().Length == 9)
{
phonebox.Text = phonebox.Text.ToString()+"";
phonebox.Select(phonebox.Text.Length, 0);
}
我不确定您删除字符的方法,但这一行不是删除破折号,它只是附加了一个空字符串对象
phonebox.Text = phonebox.Text.ToString()+"";
如果要删除最后一个字符,可以执行此操作
phonebox.Text = phonebox.Text.Substring(0, phonebox.Text.Length - 1)
或者,您可以用空字符串替换-
phonebox.Text = phonebox.Text.Replace("-", "");
最好的方法是在if和if-else检查中添加一个额外的条件。我要你做的是加进去
(Control.ModifierKeys & Keys.Backspace) == 0
进入你的条件句
这将检查并查看按下的键是否为退格。如果是,那么它将不会对您的文本字段执行上述mods
比如说
if ( (Control.ModifierKeys & Keys.Backspace) == 0 && phonebox.Text.ToString().Length == 1)
引用的SO文章
老兄,我真的很想帮你,但我真的不知道你在问什么,实际上我想去掉连字符符号。在字段中的6位之后。我想不出如何移除它。