【问题标题】:xaml parsing error on XP: "0 is not a valid value for Int32"XP 上的 xaml 解析错误:“0 不是 Int32 的有效值”
【发布时间】:2012-10-27 18:38:03
【问题描述】:

让客户端运行 XP。一旦实例化了一个非常简单的 XAML 控件,它们就会有点“怪异”。

在非 XP 机器上没有问题。特定客户机器上的零星问题。

无法在本地重现。有人经历过吗?附加属性的默认类型转换器似乎失败了......但我假设它是其他东西的副作用。

错误:

Cannot convert string '0' in attribute 'Row' to object of type 'System.Int32'. 0 is not a valid value for Int32

<Grid>
    <Grid.RowDefinitions>
      <RowDefinition Height="Auto"/>
      <RowDefinition Height="Auto"/>
      <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
      <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>

    <Menu Grid.Row="0" Grid.Column="0">
       :
       :
    </Menu>
</Grid>

【问题讨论】:

  • 由于菜单默认为第 0 行和第 0 列,因此删除分配有帮助吗?
  • 感谢您的回复。不幸的是,这可能会解决这个问题的实例......但任何其他时候我使用 Grid.Row="?"或者可能任何其他属性 =“Int32” 我会遇到这个错误。我需要找出问题的根本原因。
  • 您是否设置或覆盖了 FrameworkElement 语言属性?也许您正在这样做并且使用的语言导致了问题。如果您使用的是 CurrentCulture 或 CurrentUICulture,请检查为其设置的语言或 xp 系统上的区域设置。
  • 我也遇到了这个问题。它在除一个客户端站点之外的所有计算机上都可以正常工作。我们无法在内部复制它,并且在我们的测试机器上尝试国际设置也没有帮助。我也打开了这个 msdn 案例:social.msdn.microsoft.com/Forums/en-US/wpf/thread/…

标签: .net wpf parsing xaml converter


【解决方案1】:

这个问题可能是由于本地化造成的,听起来像这个问题 (Localization),其中第 0 行指的是另一个资源中缺少的字符串,该字符串只发生在针对另一种语言的集合上;因此是零星的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-12-17
    • 1970-01-01
    • 1970-01-01
    • 2018-11-07
    • 2020-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多