【发布时间】:2019-12-27 15:41:59
【问题描述】:
我有一个卡片文本块,用于向用户显示卡号:
<TextBlock x:Name="ccCard" Text="0000 0000 0000 0000" HorizontalAlignment="Center"
Foreground="LightGray" FontFamily="Global Monospace" Grid.ColumnSpan="4" Margin="0,0,0,0.4" Width="200"/>
我已经做到了,当一个文本框被写入时,它将它输入到文本块中:
<TextBlock x:Name="ccCard" Text="0000 0000 0000 0000" HorizontalAlignment="Center"
Foreground="LightGray" FontFamily="Global Monospace" Grid.ColumnSpan="4" Margin="0,0,0,0.4"
Width="200"/>
我想让它在 textblock 中每 4 个字符添加一个空格,否则如果它是一个文本框,我可以使用如下内容:
Insert hyphen automatically after every 4 characters in a TextBox
我怎样才能做到这一点?
【问题讨论】:
-
请向我们展示您尝试过的方法和无效的方法,以便我们为您提供帮助。正如目前所写的那样,没有尝试解决这个问题。有很多方法可以完成这项任务。
-
@Çöđěxěŕ 我不知道,这就是我需要帮助的原因
-
让我直说。你有一个
TextBox,当用户键入时,你想更新一个TextBlock,其中包括一个空格,对吗?还有I have no idea,您是在谈论如何分隔字符串,如何在其他数据更改时更新其他控件等。请明确说明您需要什么帮助。 -
当用户输入文本框,然后将文本放入文本块中,我想每4个字符添加一个“”,而不分隔字符串
-
把这个扔到你的课堂上
private void txtBox_TextChanged(object sender, TextChangedEventArgs e) { ccCard.Text = string.Join(" ", Enumerable.Range(0, txtBox.Text.Length / 4).Select(i => txtBox.Text.Substring(i * 4, 4))); }。接下来确保您有一个名为:txtBox的文本框,并且它有一个用于TextChanged的处理程序,例如:TextChanged="txtBox_TextChanged"。