(多)在UWP或WinUI3中将列表绑定到TextBlock

问题描述 投票:0回答:3

这篇文章本来就是答案,但它只适用于 WPF。 UWP 和 WinUI3 没有多重绑定。

如何在 UWP/WinUI3 中编写该代码?

uwp multibinding winui-3
3个回答
1
投票

(多)在 UWP 或 WinUI3 中将列表绑定到 TextBlock

正如 Johnny Westlake 所说,您可以使用 x:bind 方法将列表绑定到

TextBlock
。例如,使用
String.Format
方法格式化列表,然后在
TextBlock
中渲染。有关更多信息,请参阅此文档

<Page 
     xmlns:sys="using:System"
     xmlns:local="using:MyNamespace">
   <ListView ItemsSource="{x:Bind Items}">


 <ListView.ItemTemplate>
        <DataTemplate x:DataType="local:Item">
            <TextBlock Text="{x:Bind sys:String.Format(x:Null, '{0} is now available in {1}', FirstName, LastName)}"/>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

</Page>

0
投票

我相信 sys:String.Format 是带有 UWP 接口的 winui3,但如果您使用的是较新的 winui3“Microsoft:”(而不是“Windows:”)Win App SDK 接口,则不支持。在最新界面而不是 UWP 界面下实现等效的最佳方法是什么?


0
投票

这对我有用(WindowsAppSDK 1.5.24):

<TextBlock Margin="5, 0" Text="{x:Bind sys:String.Format(x:Null, '{0}% {1}Wh', XamlSetRemoteCommandGUI.MyBatteryStateGUI.XamlBatteryLeftCapacityPercent, XamlSetRemoteCommandGUI.MyBatteryStateGUI.XamlBatteryLeftCapacityWh), Mode=OneWay}" />

XamlSetRemoteCommandGUI 在后台代码 (*.xaml.cs) 中定义为 DependencyProperty

© www.soinside.com 2019 - 2024. All rights reserved.