加载带有用户名占位符的字符串

Load string with placeholder with user name

我有以下 XAML 代码

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <Grid Margin="50">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="130"></ColumnDefinition>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="70"></RowDefinition>
                <RowDefinition Height="*"></RowDefinition>
                <RowDefinition Height="*"></RowDefinition>
            </Grid.RowDefinitions>
            <TextBlock Grid.Column="1" Grid.Row="0" FontSize="36" FontFamily="Segoe UI Light" x:Uid="Greeting"/>
        </Grid>
    </Grid>

然后,我为每种语言创建了一个资源文件(一个用于 en-US,另一个用于 fr-FR),其中包含以下资源。

姓名:Greeting.Text :你好{0}!

事情是,在 运行 时间,我想用占位符替换我的名字,所以我最终会得到类似 Hello Peter Pan 的东西!

理想情况下,名字(小飞侠)应该来自Windows系统

背后的代码像谁?我在互联网上找不到类似的东西,所以不确定是否可能...

我想你可以这样划分你的 TextBlock

<TextBlock Grid.Column="1" Grid.Row="0" FontSize="36" FontFamily="Segoe UI Light">
    <Run x:Uid="Greeting"/>
    <Run Text="{x:Bind Name}"/>
</TextBlock>

但是在后面的代码中,您必须定义一个 属性 Name,它将 return 用户名。 Haven 已经尝试过,但也许这些会有所帮助:, .