有没有办法更改 C# WinRT 应用程序中文本框的行距或行高?
可以通过 XAML 属性使用 WPF 中的 TextBox 元素来执行此操作,如下所示:
<TextBox TextBlock.LineHeight="10" TextBlock.LineStackingStrategy="BlockLineHeight" />
Silverlight 有一个 LineHeight 属性,可以直接应用于 TextBox 元素。
WinRT 不允许其中任何一个。
在 WinRT 中,可以像这样更改 RichEditBox 中文本的行高(其中
EditorBox
是 RichEditBox):
Windows.UI.Text.ITextParagraphFormat LineHeight = EditorBox.Document.GetDefaultParagraphFormat();
LineHeight.SetLineSpacing(Windows.UI.Text.LineSpacingRule.OneAndHalf, 1);
但这并没有真正帮助我,因为我想更改 TextBox 元素的行高。有什么办法可以做到这一点吗?
迟到的答案,但您可以通过通过Block class(WinRT)设置属性以编程方式执行此操作。
TextBox tbox = new TextBox();
tbox.SetValue(Block.LineHeightProperty, 10.0);
在Xaml中你甚至不需要指定堆叠策略或参考
TextBlock
:
<TextBox Block.LineHeight="10" />