xaml - 我应该如何在 Windows 应用商店应用程序中显示带有绑定(bind)数据的格式化文本?

标签 xaml mvvm windows-runtime windows-store-apps winrt-xaml

我想绑定(bind)一个TextBlock的内容到包含多个数据绑定(bind) View 模型属性的格式化字符串。我也在尝试使用 MVVM 模式。

例如,我想将文本数据绑定(bind)到如下内容:String.Format("{0} / {1}", Usage, Total , 其中 UsageTotal是 View 模型属性。

我试过使用 Run s,但绑定(bind)他们的Text属性似乎不起作用,与 String.Format 相比,XAML 很困惑:

<TextBlock>
    <Run Text="{Binding Usage}" />
    <Run Text=" / " />
    <Run Text="{Binding Total}" />
</TextBlock>

我考虑过添加一个额外的 View 模型属性来进行文本格式化,但它似乎不合适;我希望 View 包含表示逻辑。

我该怎么做?请注意,我喜欢可维护、整洁、优雅和有组织的解决方案。

最佳答案

我会按照您个人的建议在您的 ViewModel 上添加一个附加属性。您的 View 模型将始终与您的 View 紧密耦合,因此我也不认为这是一件坏事。

如果您真的不想,那么您可以在堆栈面板中使用多个文本框,其方向为水平方向。

关于xaml - 我应该如何在 Windows 应用商店应用程序中显示带有绑定(bind)数据的格式化文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15357437/

相关文章:

c# - MVVM丢失,尝试将M连接到VM到V

c# - 我如何将图像存储在类库中并从任何类访问它

c# - 将 VisualStateGroup 的当前状态绑定(bind)到 UWP MVVM 应用中 View 模型中的属性

.net - 如何确定是否需要分派(dispatch)到 WinRT/Metro 中的 UI 线程?

wpf - 在 XAML 根元素中使用 StaticResource

WPF MVVM 绑定(bind)到 UserControl 的 DependencyProperty 不起作用

wpf - 如何将 WorkflowDesigner 工作流定义数据绑定(bind)到 WPF 中的 MVVM View 模型

.net - CollectionViewSources 可以嵌套吗?

c# - 如果我从代码创建文本 block ,如何计算加载时的文本框高度和宽度?

windows-runtime - Windows Phone 8.1 后台任务与前台应用通信