我使用的是Visual 2008,.NET Framework3.5--我也在使用.NET Framework3.5可用的AjaxControlToolkit最新版本
当在下面代码中显示的Textbox控件上使用FilteredTextBoxExtender时,我已经将过滤器设置为大写。过滤器在防止用户输入小写字母方面确实有效,但是当我按P的字母时,这个字母实际上会被输入,然后擦除,就像我输入all中的字母一样,这个字母根本不被输入。我想知道为什么会有不一致之处。
我的问题是,出于我自己的原因,我需要它,以便当我突出显示单个字符并更改字符时,如果它不是大写字符,当前字符应该保持不变(当我在a之间键入字符时,这是有效的),但是,当我在P之间键入字符时,当前字符实际上会被删除。
问:有办法阻止字符P全部显示吗?
任何帮助都会很好。谢谢
为了确认不是我自己的代码问题,我找到了一个演示链接,它也演示了相同的问题:http://www.aspsnippets.com/Demos/272/
AjaxControlToolkit.FilteredTextBoxExtender ftbe = new AjaxControlToolkit.FilteredTextBoxExtender();
ftbe.ID = "ftbe";
ftbe.TargetControlID = "textboxID";
ftbe.FilterType = AjaxControlToolkit.FilterTypes.UppercaseLetters;
ftbe.FilterMode = AjaxControlToolkit.FilterModes.ValidChars;
form1.Controls.Add(ftbe);发布于 2014-03-14 22:21:10
可以将ValidChars中的字符设置为只允许特定字符。
InvalidChars.如果设置为InvalidChars,则必须将FilterType设置为自定义;如果设置为ValidChars,则FilterType必须包含自定义。
var ftbe = new FilteredTextBoxExtender();
ftbe.ID = "ftbe";
ftbe.TargetControlID = textBox.ID;
ftbe.FilterType = FilterTypes.Custom; // ** Custom **
ftbe.FilterMode = FilterModes.ValidChars;
ftbe.ValidChars = "ABCDEFGHIJKLMNO"; // Allow uppercase A to O only.https://stackoverflow.com/questions/22416329
复制相似问题