我想写一个字母String.Forat
你能告诉我怎么写它我知道货币的模式,但不知道字母表。我可以为字母写StringFormat = "{}{A-Z,a-z}"
吗?
StringFormat="{}{0:C}"
我正在进行验证。我想在textBox中只输入Alphabets需要首字母大写字母的大写字母。当我输入任何数值时它会显示错误,但是使用任何WPF验证,但我不知道怎么做StringFormat用于字母
答案 0 :(得分:1)
public class MyTextBox: TextBox
{
public MyTextBox()
{
this.PreviewTextInput += new TextCompositionEventHandler(TextBox_PreviewTextInput);
this.AddHandler(DataObject.PastingEvent, new DataObjectPastingEventHandler(OnPaste));
}
private void OnPaste(object sender, DataObjectPastingEventArgs e)
{
if (e.DataObject.GetDataPresent(typeof(String)))
{
String text = (String)e.DataObject.GetData(typeof(String));
if (!IsTextAllowed(text))
{
e.CancelCommand();
}
}
else
{
e.CancelCommand();
}
}
void TextBox_PreviewTextInput(object sender, TextCompositionEventArgs e)
{
e.Handled = !IsTextAllowed(e.Text);
}
private static bool IsTextAllowed(string text)
{
Regex regex = new Regex("^[a-zA-Z]+$"); //regex that matches disallowed text
return regex.IsMatch(text);
}
}
使用上面的customTextBox