实现后台管理代码,将数据库显示出来,之后修改。用datagrid做的,可是点击edit之后,无法显示文本框,怎么回事?
以下是代码:
<asp:DataGrid ID="exp" runat="server" EditItemStyle-BackColor ="yellow" EditItemStyle-ForeColor ="black" OnEditCommand ="DoItemEdit" OnCancelCommand ="DoItemCancel" OnDeleteCommand="DoItemDelete" AutoGenerateColumns ="false">
<Columns >
<asp:BoundColumn DataField="testid" HeaderText="准考证号"></asp:BoundColumn>
<asp:TemplateColumn HeaderText ="公司">
<ItemTemplate >
<asp:Label ID="com" runat ="server" Text ='<%# Container.DataItem("company") %>'></asp:Label></ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="company" Text='<%# DataBinder.Eval (Container.DataItem, "company")%>' runat="server"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:EditCommandColumn EditText ="Edit" CancelText ="Cancel" UpdateText ="Update"></asp:EditCommandColumn>
</Columns>
</asp:DataGrid>
谢谢指点~
以下是代码:
<asp:DataGrid ID="exp" runat="server" EditItemStyle-BackColor ="yellow" EditItemStyle-ForeColor ="black" OnEditCommand ="DoItemEdit" OnCancelCommand ="DoItemCancel" OnDeleteCommand="DoItemDelete" AutoGenerateColumns ="false">
<Columns >
<asp:BoundColumn DataField="testid" HeaderText="准考证号"></asp:BoundColumn>
<asp:TemplateColumn HeaderText ="公司">
<ItemTemplate >
<asp:Label ID="com" runat ="server" Text ='<%# Container.DataItem("company") %>'></asp:Label></ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="company" Text='<%# DataBinder.Eval (Container.DataItem, "company")%>' runat="server"></asp:TextBox>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:EditCommandColumn EditText ="Edit" CancelText ="Cancel" UpdateText ="Update"></asp:EditCommandColumn>
</Columns>
</asp:DataGrid>
谢谢指点~
解决方案 »
- 列表页信息排序问题
- 哈希表怎么用?
- Greatqn Templates V1.0发布
- 跪求一个免费的动态网站以及设计报告啊
- 哪位大侠能帮我解释一下,这段代码是什么意思?
- 在.net里面使用updata命令,显示执行成功,但是数据库里面却还是原来的值,insert执行成功,但updata跟delete都失败了,求大神赐教!
- GridView控件如何实现动态添加模板列
- 我在程序中生成n个File,然后我想使用他们,但是我不知如何获取每个file控件及他们的属性?
- 谁能告诉我?
- 哥哥们,帮小妹一把吧 Asp.net中global.asax文件的用法?
- ViewSate、Seesion、Application的作用
- 有没有用来检测asp.net的安全性能工具
{
GridView1.EditIndex = e.NewEditIndex;
DataSet newds = new DataSet();
newds = (DataSet)Session["ds"];
GridView1.DataSource = newds;
GridView1.DataBind();
}
现在是点击edit后根本无法进入编辑,不变成文本框,郁闷
第一次用,什么都不太懂,看网上写的,差不多,这样呀
请教请教
Public Class changeExp : Inherits Page
Protected exp As DataGrid
Protected com1 As Label
Protected company1 As TextBox Public Sub Page_Load()
If Not IsPostBack Then
Dim expstr, expselect, id As String
id = Session("tid")
expstr = "database=CETTIC;server=localhost;uid=sa;pwd=;"
expselect = "SELECT * FROM experient WHERE testid=2"
Dim expConn As New SqlConnection(expstr)
Dim expAdapt As New SqlDataAdapter(expselect, expConn)
Dim expSet As New DataSet()
expAdapt.Fill(expSet, "experient")
Dim expView As New DataView(expSet.Tables("experient"))
exp.DataSource = expView
exp.DataBind()
End If End Sub
Public Sub DoItemCancel(ByVal objSource As Object, ByVal objArgs As DataGridCommandEventArgs)
exp.EditItemIndex = -1 End Sub
Public Sub DoItemDelete(ByVal objSource As Object, ByVal objArgs As DataGridCommandEventArgs) End Sub
Public Sub DoItemEdit(ByVal objSource As Object, ByVal objArgs As DataGridCommandEventArgs)
company1.Text = "griea"
End Sub
Private Sub DataGrid1_UpdateCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.UpdateCommand Try
Dim itemCell As TextBox = CType(e.Item.Cells(0).Controls(0), TextBox)
Dim Item As Integer = itemCell.Text.Trim '定义各个字段文本框 Dim TxtPlace As TextBox = CType(e.Item.Cells(1).Controls(0), TextBox)
Dim TxtName As TextBox = CType(e.Item.Cells(2).Controls(0), TextBox)
Dim TxtPhoneNumber As TextBox = CType(e.Item.Cells(3).Controls(0), TextBox)
Dim TxtPHSNumber As TextBox = CType(e.Item.Cells(4).Controls(0), TextBox)
Dim TxtTitle As TextBox = CType(e.Item.Cells(5).Controls(0), TextBox)
Dim TxtTitleIndex As TextBox = CType(e.Item.Cells(6).Controls(0), TextBox)
Dim TxtEmail As TextBox = CType(e.Item.Cells(7).Controls(0), TextBox) Dim Comm As New OracleCommand
Comm = OraConn.CreateCommand
Comm.CommandText = "Update T_PhoneNumber Set Place='" & TxtPlace.Text.Trim & "',Name='" & TxtName.Text.Trim & "',PhoneNum='" & TxtPhoneNumber.Text.Trim & "',PHSNum='" & TxtPHSNumber.Text.Trim & "',Title='" & TxtTitle.Text.Trim & "',TitleIndex='" & TxtTitleIndex.Text.Trim & "',Email='" & TxtEmail.Text.Trim & "' Where ID=" & Item & ""
If OraConn.State = ConnectionState.Closed Then
OraConn.Open() End If
Comm.ExecuteNonQuery()
OraConn.Close()
Catch ex As Exception
BtDept.Text = ex.Message
End Try DataGrid1.EditItemIndex = -1
'绑定数据到DataGrid1中
RefreshData() End Sub Private Sub DataGrid1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.EditCommand DataGrid1.EditItemIndex = e.Item.ItemIndex.ToString
’绑定数据
RefreshData()
End SubSub RefreshData()
Try
Dim DA As New OracleDataAdapter("Select * From T_PhoneNumber Where SectionName='" & MyStr & "' Order By TitleIndex,SectionName,PhoneNumber", OraConn)
Dim DS As New DataSet
DA.Fill(DS, "PhoneNumber")
DataGrid1.DataSource = DS.Tables(0)
DataGrid1.DataBind() DA.Dispose()
DS.Dispose() Catch ex As Exception
BtDept.Text = ex.Message
End Try End Sub你试试看,我的代码不够完善,希望抛砖引玉,大家共同完善。