C# 使用屏蔽文本框复制到剪贴板
C#新手,请原谅我遗漏了一些简单的东西 我正在尝试设置一个标签(点击时),以将maskedtextbox(电话号码)的文本复制到剪贴板中减去掩码。我已将maskedtextbox中的属性设置为仅包含文字。如果我选择文本并按ctrl+c组合键,效果会很好。虽然我尝试了C# 使用屏蔽文本框复制到剪贴板,c#,winforms,C#,Winforms,C#新手,请原谅我遗漏了一些简单的东西 我正在尝试设置一个标签(点击时),以将maskedtextbox(电话号码)的文本复制到剪贴板中减去掩码。我已将maskedtextbox中的属性设置为仅包含文字。如果我选择文本并按ctrl+c组合键,效果会很好。虽然我尝试了Clipboard.SetText(custbtnext.Text),但我无法通过点击按钮来实现这一点它将运行,但它给我000-000-0000,我需要0000000000。如果您对此有任何建议,我们将不胜感激 谢谢我没有使用过该控件
Clipboard.SetText(custbtnext.Text),但我无法通过点击按钮来实现这一点代码>它将运行,但它给我000-000-0000,我需要0000000000。如果您对此有任何建议,我们将不胜感激
谢谢我没有使用过该控件,但在这种情况下,您可以尝试以下方法:
Clipboard.SetText(custBtnText.Text.Replace("-", "");
但在处理用户输入时,我会更彻底一点。例如,如果我真的只想要数字,我可能会循环遍历每个字符,只保存那些数字。但这取决于你的要求
string GetDigits(string s)
{
StringBuilder sb = new StringBuilder();
foreach (var c in s)
{
if (Char.IsDigit(c))
sb.Append(c);
}
return sb.ToString();
}
我没有使用该控件,但在这种情况下,您可以尝试以下操作:
Clipboard.SetText(custBtnText.Text.Replace("-", "");
但在处理用户输入时,我会更彻底一点。例如,如果我真的只想要数字,我可能会循环遍历每个字符,只保存那些数字。但这取决于你的要求
string GetDigits(string s)
{
StringBuilder sb = new StringBuilder();
foreach (var c in s)
{
if (Char.IsDigit(c))
sb.Append(c);
}
return sb.ToString();
}
只需设置masked.TextMaskFormat=MaskFormat.ExcludePromptAndLiterals
然后调用.Text只需设置masked.TextMaskFormat=MaskFormat.ExcludePromptAndLiterals
然后调用.Text@Jonathan剪贴板.SetText(custbntext.Text.Replace(“-”,”)代码>工作得很好。我认为它也应该足够了,因为有了屏蔽框,他们无论如何只能以特定的方式输入文本,所以它总是有“-”。非常感谢,非常好!@JonathanClipboard.SetText(custbntext.Text.Replace(“-”,”)代码>工作得很好。我认为它也应该足够了,因为有了屏蔽框,他们无论如何只能以特定的方式输入文本,所以它总是有“-”。太感谢了,太棒了@没有必要。比那简单多了。检查我的答案。@hans没必要。比那简单多了。检查我的答案。