0

在我的页面上,我有 FormView 控件,并且我将 Integer 数据库字段绑定到位于 FormView 的 EditItemTemplate 内的 TextBox。

<FormView ...>
    <EditItemTemplate> 
        <dx:ASPxTextBox ID="txtDiameter" runat="server" Text='<%# Bind("Diameter") %>' />
        ... 
    <EditItemTemplate>
    ... 
</FormView>

我的问题是当直径字段为空时,txtDiameter 获取空字符串的值。当我单击更新命令时(如果我没有在 txtDiameter 中提供任何数值),则会引发客户端错误

Sys.WebForms.PageRequestManagerServerErrorException:不是 Int32 的有效值。

我发现了 2005 年的一些帖子,声称这是由于一些错误而发生的。好吧,现在是 2012 年。我想出解决这个问题的唯一方法是使用FormView_ItemUpdating事件,循环遍历所有有问题的值并将它们从 String.Empty 转换为 null。

我只是有点怀疑这可能没有必要。有没有另一种方法来处理这个问题?

4

1 回答 1

2

而是绑定编辑器的 Value 属性:

<dx:ASPxTextBox ID="txtDiameter" runat="server" Value='<%# Bind("Diameter") %>' />

这行得通吗?

于 2012-05-16T08:22:38.920 回答