我在列表视图中有一系列文本框,其中包含员工的小时和分钟。我希望在任何文本框失去焦点时计算输入的值。我试过了this exemple from the MSDM。对于button和LinkButton,我可以使用 OnItemCommand ,对于DDl和listbox,我可以使用 OnSelectedIndexChanged 。
我的texbox上的Textchanged怎么样?我没有看到他们的任何事件。从MSDN,唯一类似的方法是 TextBox.TextChanged事件。但它在该页面上说:“此API支持.NET Framework基础结构,不能直接在您的代码中使用。”
答案 0 :(得分:5)
TextBoxes
位于ItemTemplate
(或EditItemTemplate),不是吗?如果他们有AutoPostBack=true
,他们会在文字发生变化后立即回复,重点就会丢失。与ListView
的外部相同。
on aspx:
<ItemTemplate>
<tr runat="server">
<td>
<asp:TextBox OnTextChanged="TextBox1_TextChanged" AutoPostBack="true"
ID="Textbox1" runat="Server" Text="here is text" />
</td>
<td>
</tr>
</ItemTemplate>
代码隐藏中的:
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
TextBox TextBox1 = (TextBox) sender;
}