这是我最近碰到的一个问题,困扰了许久,在网上找了许久,最后在License的帮助下解决了这个问题 http://www.cnblogs.com/akwwl/archive/2012/08/12/2635614.html#2523515 Silverlight是不支持键盘录入上下标的,那么当用户录入上下标信息时,应该怎么办呢? 1.在Silverlight中遇到需要显示上标或者下标(如:水的化学式H2O)时,我们可以使用Silverlight中专门处理的上下标的特殊字符显示。 上标的特殊字符: Superscript: 0 : U+2070 1 : U+00B9 2 : U+00B2 3 : U+00B3 4-9 : U+2074-2079(表示从4到9的特殊字符) + : U+207A - : U+207B = : U+207C ( : U+207D ) : U+207E n : U+207F 下标的特殊字符: 0-9 : U+2080-2089(表示从0到9的特殊字符) + : U+208A -: U+208B =: U+208C (: U+208D ): U+208E 以上特殊字符中,冒号前面的为我们要显示的内容,冒号后面的为Silverlight中如何显示的特殊字符; 其中U在代码中使用的是“\x”,比如下标2就是用“\x2082”表示。 2.使用方法如下: 显示水的化学式时,显示的字符串为:string water = "H" + "\x2082" + "O"; 显示勾股定理时,现实的字符串为:string s = "a\x00B2+b\x00B2=c\x00B2"; 其中显示下标2的特殊字符串为:“\x2082”,显示上标2的特殊字符串为“\x00b2” 3.在控件中的显示如下: <TextBlock HorizontalAlignment="Left" Margin="0" Name="msg" Text="TextBlock" VerticalAlignment="Top" /> 后台代码: msg.Text=" Fe\x2082O\x00B3";(显示三氧化二铁的化学式) 界面显示效果: 以上是License的博文,在这里补充一点,Silverlight是不支持键盘录入上下标的,那么当用户录入上下标信息是,应该怎么办呢? 创建一个ListBox,然后把这些上下标添加到一个List中,并绑定到这个ListBox上 IList<string> list = new List<string>(); list.Add("\x2080"); list.Add("\x2081"); list.Add("\x2082"); ........ |
|
来自: 昵称10504424 > 《C#》