2012-09-04 59 views
0

因此,关于这个问题有非常类似的问题,但似乎没有解决我想要做的事情,也许这是不可能的。我有一个表单,其中有许多文本框绑定到我的模型中的int属性。我们允许用户清除该字段,并且应该保持清除。当然,如果他们这样做,他们会得到一个验证错误,它不能转换“”。然而,我明白为什么这是由于我不能使用int的设计,而我知道这将解决我的问题。这是可能的,而不必定义一个字符串属性来绑定?我试图不重复所有我的int属性作为字符串属性,但也许这是我需要采取的道路。允许在int为空的int文本框中为null int

+0

它会是一个解决方案,让转换器认为“”= 0? – GameAlchemist

+1

也许你应该看看验证错误发生的原因。这听起来好像验证(或转换)不能处理空值 - 我猜想它需要做的是将''“'转换为'0'(或其他一些默认值)。 –

回答

1

当字符串为空时,您想要做什么? 我的意思是如果文本框为空,你是否想在prop中使用一些int值?如果是的话,简单地创建一个converter,将空值转换为该值,并分配到绑定

+0

实际上,当它是空的时候,我想在物业放置一个基本值,例如-9999。这是因为一个或多个字段是可选的,这是我们告诉COM客户端该字段尚未填充的方式。 – user1646235

+1

正如我所说,你可以写转换器,将空值转换为-999和-999为空字符串 –

1

您需要能够表示一个空的int。 这是一个肮脏的黑客,但如果你选择了一个数字,说--999​​将永远不会有效,你可以使用自定义转换器转换和转换之间“”和-999。

它可能会达到你想要的,但我不会推荐它。