【发布时间】:2014-09-11 06:13:02
【问题描述】:
我是 WPF 的新手,我发现关于我认为是一个基本问题的信息数量惊人地稀缺,即在 TextBlock 中使用整数作为文本。这是我在app.xaml 中定义我的资源的方式:
xmlns:sys="clr-namespace:System;assembly=mscorlib"
和
<Application.Resources>
<sys:Int32 x:Key="MyResourceName">-1</sys:Int32>
</Application.Resources>
这是正确定义和功能的,因为当我尝试在一个简单的 TextBlock 对象中使用它时,VS 位于:
<TextBlock Name="MyTextboxName" Text="{DynamicResource MyResourceName}" />
问题在于它会生成一个错误,当然,它不能默认将整数转换为字符串。通常,我会在我知道我正在打字之前将其转换,但我不知道如何在 xaml 中转换。我考虑过绑定,但它似乎并没有过多地关注用户定义的变量,而且会更麻烦,所以我看了一下转换器。我也发现很少关于在 xaml 中将整数转换为字符串。如果没有解决方案,我可以简单地制作变量字符串并将它们转换为整数或浮点数,仅用于转换,然后将它们转换回来,但这将是一个主要(和混乱)的痛苦。
编辑:明确地说,我真的在问两个问题:
- 是否只能在 Xaml 中进行类型转换?
- 是否有用于将一种原始类型转换为另一种的默认转换器?
【问题讨论】:
-
好的,不如使用 Label 来设置它的
Content属性?您还可以设置其ContentStringFormat属性。