DataList控件EditItemTemplate中的控件如何访问?

griefforyou 2004-08-20 08:02:20
编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。

编译器错误信息: BC30451: 名称“Title”未声明。

源错误:



行 40: Sub DataList_UpdateCommand(Sender As Object,e As DataListCommandEventArgs)
行 41: Dim SQL As String
行 42: SQL="update Titles set title='" & Title.Text & "',price=" & Price.Text & " Where " & MyList.DataKeyField & "='" & _
行 43: MyList.DataKeys(e.Item.ItemIndex) & "'"
行 44: ExecuteSQL(SQL)




代码如下:
<%@ Page Language="VB" Debug="True" Explicit="True" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<script runat="server" language="vb">
Sub Submit_Click(Source As Object, E As EventArgs)
Label1.text="查询类型为 " & Select1.SelectedItem.Text
BindList()
End Sub

Sub BindList()
Dim DS As DataSet
Dim MyConnection As SqlConnection
Dim MyCommand As SqlDataAdapter

MyConnection=New SqlConnection("server=(local);uid=sa;pwd=sa;database=pubs")
MyCommand=New SqlDataAdapter("select * from Titles where type='" + Select1.SelectedItem.Value + "'",MyConnection)

DS=New DataSet()
MyCommand.Fill(DS,"Titles")

MyList.DataSource = DS.Tables("Titles").DefaultView
MyList.DataBind()
End Sub

Sub ExecuteSQL(SQL As String)
Dim MyConnection As SqlConnection
Dim MyCommand As SqlCommand

MyConnection=New SqlConnection("server=(local);uid=sa;pwd=sa;database=pubs")
MyConnection.Open
MyCommand=New SqlCommand(SQL,MyConnection)
MyCommand.ExecuteNonQuery
End Sub

Sub DataList_EditCommand(Sender As Object,e As DataListCommandEventArgs)
MyList.EditItemIndex=e.Item.ItemIndex
BindList()
End Sub

Sub DataList_UpdateCommand(Sender As Object,e As DataListCommandEventArgs)
Dim SQL As String
SQL="update Titles set title='" & Title.Text & "',price=" & Price.Text & " Where " & MyList.DataKeyField & "='" & _
MyList.DataKeys(e.Item.ItemIndex) & "'"
ExecuteSQL(SQL)
BindList()
End Sub

Sub DataList_CancelCommand(Sender As Object,e As DataListCommandEventArgs)
MyList.EditItemIndex=-1
BindList()
End Sub

</script>

<HTML>
<HEAD>
<title>New ASP.NET Document </title>
</HEAD>

<body bgcolor="#ffffff" topmargin="0" marginheight="0">

<form runat="server" method="post">

<asp:DropDownList id="Select1" runat="server">
<asp:listitem >psychology</asp:listitem>
<asp:listitem >business</asp:listitem>
<asp:listitem >popular_comp</asp:listitem>
</asp:DropDownList>


<asp:Button id="Submit" runat="Server" onClick="Submit_Click" text="Search"></asp:Button>
<asp:Label id="Label1" runat="Server"></asp:Label>


<asp:datalist id="MyList" GridLines="Horizontal" layout="flow" showfooter=true borderwidth=1 runat="server" DataKeyField="title_id" OnEditCommand="DataList_EditCommand" OnUpdateCommand="DataList_UpdateCommand" OnCancelCommand="DataList_CancelCommand" width="500">
<HeaderTemplate>
<center><b><font face="宋体" size=3>产品列表</font></b></center>
</HeaderTemplate>

<ItemTemplate>
<%# Container.DataItem("title_id") %></td>
<td><%# Container.DataItem("title") %></td>
<td><%# DataBinder.Eval(Container.DataItem,"price","${0}") %></td>
<td><asp:LinkButton runat="server" text="编辑" CommandName="Edit"/>
</ItemTemplate>

<EditItemTemplate>
<%# Container.DataItem("title_id") %></td>
<td><asp:TextBox Runat="Server" width="140" id="Title" text='<%# Container.DataItem("title") %>' /></d>
<td><asp:TextBox Runat="Server" width="80" id="Price" text='<%# Container.DataItem("price") %>' /></td>
<td><asp:LinkButton runat="server" text="更新" CommandName="Update" /> <asp:LinkButton runat="server" text="取消" CommandName="Cancel"/>
</EditItemTemplate>
<!--以上编辑模板中的Title和Price怎么读取的时候说未定义?-->

</asp:datalist>

</form>

</body>
</HTML>
...全文
170 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
griefforyou 2004-08-21
  • 打赏
  • 举报
回复
没有.vb / .cs 文件,我是单文件的Web窗口。
wangrenda 2004-08-21
  • 打赏
  • 举报
回复
那个没有实例化,
看看你的.cs系统生成页面有没有你的Title
griefforyou 2004-08-21
  • 打赏
  • 举报
回复
直接用Title为什么不可以?我看书上就直接用的
griefforyou 2004-08-21
  • 打赏
  • 举报
回复
楼上啥意思?
jjw9000 2004-08-21
  • 打赏
  • 举报
回复
你应该先找到这个控件,然后所用找到的控件
griefforyou 2004-08-21
  • 打赏
  • 举报
回复
我已经解决了,唉。。。。。

Dim Title As String=CType(e.Item.FindControl("Title"),TextBox).Text
张海霖 2004-08-20
  • 打赏
  • 举报
回复
Me.Title

62,075

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧