多重绑定到 wpf 用户控件的 Title 属性?

发布于 2024-10-07 06:12:05 字数 489 浏览 0 评论 0原文

我需要格式化用户控件的 Title 属性。为此,我尝试将 MultiBinding 与 StringFormat 结合使用。

我使用的 Xaml 是:

<Control x:Name="myControlName">
    <Control.Title>
        <MultiBinding StringFormat="You have {0} of {1} items. ">
            <Binding Path="MyNumber"></Binding>
            <Binding Path="TotalNumber"></Binding>
        </MultiBinding>
    </Control.Title>
</Control>

由于某种原因,这似乎不起作用。 我在这里错过了什么吗?谢谢!

I need to format the Title property of my user control. For this I am trying to make use of MultiBinding with StringFormat.

The Xaml I use is :

<Control x:Name="myControlName">
    <Control.Title>
        <MultiBinding StringFormat="You have {0} of {1} items. ">
            <Binding Path="MyNumber"></Binding>
            <Binding Path="TotalNumber"></Binding>
        </MultiBinding>
    </Control.Title>
</Control>

For some reason this does not seem to work.
Am I missing something here? Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

稚然 2024-10-14 06:12:05

如果使用 MVVM,我建议将 Title 属性绑定到 ViewModel 上的属性;如果不使用,则仅将 Title 属性绑定到后面代码上的属性。

<Control x:Name="myControlName" Title={Binding Path=MyTitle}>

</Control>

public class MyView
{
    public int MyNumber { get; set; }
    public int TotalNumber { get; set; }
    public string MyTitle 
    {
        get { return string.Format("You have {0} of {1} items. ", MyNumber, TotalNumber); }
    }
}

I would recommend binding the Title property to a property on a ViewModel if using MVVM or just a property on the code behind if not.

<Control x:Name="myControlName" Title={Binding Path=MyTitle}>

</Control>

public class MyView
{
    public int MyNumber { get; set; }
    public int TotalNumber { get; set; }
    public string MyTitle 
    {
        get { return string.Format("You have {0} of {1} items. ", MyNumber, TotalNumber); }
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文