Mou*_*awi 0 wpf xaml textbox uppercase windows-runtime
页面中的一个文本框.我不能使用转换器(它没有工作),我不能使用CharacterCasing property
当我写文本时如何把大写我的文本框?
我使用Windows运行时为Windows 8.1开发,所以我在互联网上找不到很多帮助
我的代码:
KeyUp:
String str = "hello";
str = str.ToUpper();
str.Select(str.Count(), 0);
Run Code Online (Sandbox Code Playgroud)
KeyDown:
bool bModify = true;
Run Code Online (Sandbox Code Playgroud)
我的XAML代码:
<TextBox Name="Name" KeyUp="KeyUp" FontSize="20" Margin="15" Grid.Column="1" Grid.Row="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" KeyDown="KeyDown"/>
Run Code Online (Sandbox Code Playgroud)
您可以保持TextBox原样,但是当不在焦点时 - 隐藏它并TextBlock使用相同的文本显示,但是使用类似的Typography.Capitals="SmallCaps"设置.
否则 - 这可能有效:
<TextBox
x:Name="tb"
Width="500"
VerticalAlignment="Center"
HorizontalAlignment="Center"
KeyDown="OnKeyDown"
TextChanged="OnTextChanged"/>
Run Code Online (Sandbox Code Playgroud)
C#
private void OnKeyDown(object sender, KeyRoutedEventArgs e)
{
DoTheAllCapsThing();
}
private void OnTextChanged(object sender, TextChangedEventArgs e)
{
DoTheAllCapsThing();
}
private void DoTheAllCapsThing()
{
var start = tb.SelectionStart;
var length = tb.SelectionLength;
tb.Text = tb.Text.ToUpper();
tb.Select(start, length);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
788 次 |
| 最近记录: |