我发现我的一个设置了可编辑的DataGrid, 其中子控件TextBox的Text成员不同于随编辑框中的内容, TextBox.Text成员只等于TextBox初始化时候值, 其后就不会改变了. 我想把TextBox的Text成员Update一下, 应该如何操作呢? 有没有类似MFC的UpdateData操作?
理论上不是应该会自动更新的吗?<asp:DataGrid id="MyDataGrid" Runat="server" Width="600" BackColor="#fffdec" BorderColor="#9999FF"
ShowFooter="False" CellPadding="3" CellSpacing="0" Font-Size="8pt" HeaderStyle-BackColor="#CCFFFF"
OnEditCommand="MyDataGrid_Edit" OnCancelCommand="MyDataGrid_Cancel" OnUpdateCommand="MyDataGrid_Update"
OnDeleteCommand="MyDataGrid_Delete" AutoGenerateColumns="False">
<HeaderStyle BackColor="#CCFFFF"></HeaderStyle>
<Columns>
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="确认" CancelText="取消" EditText="修改">
<ItemStyle Wrap="False"></ItemStyle>
</asp:EditCommandColumn> <asp:TemplateColumn HeaderText="项目编号">
<HeaderStyle HorizontalAlign="Center"></HeaderStyle>
<ItemTemplate>
<asp:Label Runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "项目编号") %>' ID="lbl_PrjNum"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox Runat="server" ID="tbx_PrjNum" Text='<%# DataBinder.Eval(Container.DataItem, "项目编号")%>'/>
</EditItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>Sub MyDataGrid_Edit( Sender as Object, E as DataGridCommandEventArgs )
MyDataGrid.EditItemIndex = CInt( E.Item.ItemIndex )
MyDataGrid.DataBind()
End SubSub MyDataGrid_Update( Sender as Object, E as DataGridCommandEventArgs )
Dim tbx As TextBox
tbx = E.Item.FindControl( "tbx_PrjNum" )
tbx.Text '问题就出在这里, 这个值无论你怎么改变TextBox中的内容, 他都是永远等于初始化时的值
End Sub
理论上不是应该会自动更新的吗?<asp:DataGrid id="MyDataGrid" Runat="server" Width="600" BackColor="#fffdec" BorderColor="#9999FF"
ShowFooter="False" CellPadding="3" CellSpacing="0" Font-Size="8pt" HeaderStyle-BackColor="#CCFFFF"
OnEditCommand="MyDataGrid_Edit" OnCancelCommand="MyDataGrid_Cancel" OnUpdateCommand="MyDataGrid_Update"
OnDeleteCommand="MyDataGrid_Delete" AutoGenerateColumns="False">
<HeaderStyle BackColor="#CCFFFF"></HeaderStyle>
<Columns>
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="确认" CancelText="取消" EditText="修改">
<ItemStyle Wrap="False"></ItemStyle>
</asp:EditCommandColumn> <asp:TemplateColumn HeaderText="项目编号">
<HeaderStyle HorizontalAlign="Center"></HeaderStyle>
<ItemTemplate>
<asp:Label Runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "项目编号") %>' ID="lbl_PrjNum"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox Runat="server" ID="tbx_PrjNum" Text='<%# DataBinder.Eval(Container.DataItem, "项目编号")%>'/>
</EditItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>Sub MyDataGrid_Edit( Sender as Object, E as DataGridCommandEventArgs )
MyDataGrid.EditItemIndex = CInt( E.Item.ItemIndex )
MyDataGrid.DataBind()
End SubSub MyDataGrid_Update( Sender as Object, E as DataGridCommandEventArgs )
Dim tbx As TextBox
tbx = E.Item.FindControl( "tbx_PrjNum" )
tbx.Text '问题就出在这里, 这个值无论你怎么改变TextBox中的内容, 他都是永远等于初始化时的值
End Sub
解决方案 »
- 这个表格是怎么设计的呢?
- 吴老师请进
- 关于站内文章搜索,查找内容关键字和多表的问题
- login控件问题??????
- vs2005,有复杂一点的案例演示怎么实现多表联合查询,更新,插入吗?
- 这个技术问题不能实现吗?
- 读XML文件时出错,System.Xml.XmlException: 给定编码中的字符无效,这个由于编码问题,改成<?xml version="1.0" encoding="ISO-8859-1"?>
- 这个问题好怪呀??
- .net好多bug,同意的签个名!
- 请高手看看我在线等待!
- 请教一个超难的问题-文件夹权限!!!
- Server.UrlDecode(Server.UrlEncode("%20"))居然!=%20
If Not Page.IsPostBack
里面了吗?
If Not Page.IsPostBack
里