gpt4 book ai didi

c# - WPF TextBox 禁用特殊字符中断

转载 作者:太空宇宙 更新时间:2023-11-03 15:04:15 29 4
gpt4 key购买 nike

我有一个 TextBox 定义如下:

<TextBox Text="{Binding License.LicenseKey}"
HorizontalContentAlignment="Left"
TextAlignment="Justify"
Width="350"
Height="100"
Margin="10,0,0,0"
TextWrapping="Wrap" />

目前长字符串会在特殊字符处中断:

enter image description here

我希望它在到达 TextBox 的末尾时简单地中断任何字符,如下所示:

enter image description here

有没有办法禁用 TextBox 使用的库存中断?我尝试了 TextAlignmentHorizo​​ntalContentAlignment 的各种选项,但均无济于事。

最佳答案

您可以在每个字符后添加一个零宽度空格 (U+200B),这将允许在任何位置中断。您需要在 View 模型中定义一个属性并绑定(bind)到它,并让 getter 执行此转换,以便它以换行符显示,例如:

string SomeProperty
{
get { return String.Join(string.Empty, License.LicenseKey.Zip(new string('\u200B', License.LicenseKey.Length), (x, y) => x.ToString() + y)); }
set { Model.LicenseKey = value?.Replace("\u200B", string.Empty); }
}

但是我不知道光标位置会发生什么。

关于c# - WPF TextBox 禁用特殊字符中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44528118/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com