c# - 类和文本的多重绑定 StringFormat
问题描述
我有一个 StackPanel,它看起来像:
<StackPanel Orientation="Horizontal">
<TextBlock Text="{helpers:Localization PIV_HdrTblPtnId}" />
<TextBlock Text="{Binding Path=(utils:NavigationVariables.Id)}" />
</StackPanel>
我正在尝试将其转换为单个 TextBlock,如下所示:
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0} {1}">
<Binding Path="{helpers:Localization PIV_HdrTblPtnId}"/>
<Binding Path="(utils:NavigationVariables.Id)"
UpdateSourceTrigger="PropertyChanged" />
</MultiBinding>
</TextBlock.Text>
</TextBlock>
但我收到以下错误:
不能在“绑定”类型的“路径”属性上设置“本地化”。
有没有办法解决这个问题?提前致谢!
编辑:本地化类:
public class LocalizationExtension : Binding
{
#region Constructors
public LocalizationExtension(string name) : base("[" + name + "]")
{
Mode = BindingMode.OneWay;
Source = CultureManager.Instance;
}
#endregion
}
解决方案
具有两个 Runs 的 TextBlock 应该可以工作:
<TextBlock>
<Run Text="{helpers:Localization PIV_HdrTblPtnId}"/>
<Run Text="{Binding Path=(utils:NavigationVariables.Id), Mode=OneWay}" />
</TextBlock>
推荐阅读
- angular - 将值附加到 TypeScript 中的字符串变量
- javascript - 将图像从 Vue Js 发送到 Flask Restful API
- python - 打印 x 的最大值,其中 x = |(A[i] – A[j]) + (i – j)|
- laravel - 是否可以授予令牌访问链接到亚马逊 s3 存储的权限?
- python - 需要帮助来解决这个问题
- javascript - 无法在 React 中设置未定义的属性“myInterval”
- php - 将包含的输出发送到变量中?
- linux - 如何永远在linux服务器上运行命令
- python - render_template Python 上 JSON 对象的值
- c# - Cosmos DB - 更新项目时出现错误“检测到属性‘任务’的自引用循环”