You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在XAML中调用含Environment.NewLine的资源文本?

解决TextBlock调用带占位符的多语言资源并插入换行的问题

你可以通过MultiBinding结合StringFormat来实现,把sys:Environment.NewLine作为参数填充到资源文本的占位符中,具体写法如下:

首先确认XAML根元素已经引入所需命名空间:

xmlns:res="clr-namespace:你的资源文件所在的命名空间"
xmlns:sys="clr-namespace:System;assembly=mscorlib"

然后修改TextBlock的Text属性绑定:

<TextBlock x:Name="TextBlockInformation" TextWrapping="Wrap">
    <TextBlock.Text>
        <MultiBinding StringFormat="{x:Static res:Messages_en.TestView_01}">
            <Binding Source="{x:Static sys:Environment.NewLine}" />
        </MultiBinding>
    </TextBlock.Text>
</TextBlock>

原理说明

  • 资源文本里的{0}是占位符,MultiBinding会将sys:Environment.NewLine作为第一个参数传入,替换占位符生成带换行的完整文本。
  • 这种方式不需要在资源文件里硬编码换行符,完全依赖系统的标准换行符,跨平台兼容性更好。

内容的提问来源于stack exchange,提问作者Alexander

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 18:24:25