Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF-“;行距“;在文本块中_C#_Wpf_Xaml_Textblock - Fatal编程技术网

C# WPF-“;行距“;在文本块中

C# WPF-“;行距“;在文本块中,c#,wpf,xaml,textblock,C#,Wpf,Xaml,Textblock,我有一个文本块,我想传递一个属性'行间距'/strong>'。将“LineHeight”与LineStackingStrategy=“BlockLineHeight”一起使用的一点是,它还将线宽应用于第一行之前的线段: <TextBlock LineStackingStrategy="MaxHeight" TextWrapping="Wrap" LineHeight="50">Lorem...</TextBlock> 如何在不修改第一行前的线宽的情况下保存所述“线宽”

我有一个文本块,我想传递一个属性'行间距'/strong>'。将“LineHeight”与LineStackingStrategy=“BlockLineHeight”一起使用的一点是,它还将线宽应用于第一行之前的线段:

<TextBlock LineStackingStrategy="MaxHeight" TextWrapping="Wrap" LineHeight="50">Lorem...</TextBlock>

如何在不修改第一行前的线宽的情况下保存所述“线宽”

我认为可能可行的一件事是将流程文档的段落中的每一行分开,因为段落在行前和行后都有一个属性间隔

任何帮助都将不胜感激。提前谢谢

回答


似乎可以使用LineStackingStrategy=“MaxHeight”来避免在第一行出现前导。(查看下面的答案以了解详细信息)


另外,感谢米奇的启示:D

似乎您可以使用
LineStackingStrategy=“MaxHeight”
来避免在第一行出现前导:

<TextBlock LineStackingStrategy="MaxHeight" TextWrapping="Wrap" LineHeight="50">Lorem...</TextBlock>
Lorem。。。
产生


你可以做的一件简单的事就是假装。只需对整个对象应用一个小的负边距,以抵消顶部和底部的行距。就像在你的
TextBlock
上抛出
Margin=“0,-5”
,这样一个简短的回答并不认为它仅仅是一条评论。不确定这个答案:是否适用于你的问题,或者是否可以修改,但可能值得一读。实际上,这是我最初的方法。我不想跟上它,因为它给我计算所有不同选项的利润率带来了问题(由于用户可以修改TextSize和TextFont,因此我对LineHeight方法的计算涉及将这两个参数应用于计算行距的函数中,但最终一些组合不太合适(我认为是因为小数),但使用其他数字格式似乎也不起作用。这太完美了!非常感谢!!@Xanagandr,如果这回答了您的问题,您可以单击投票按钮下的复选标记将其标记为接受。