网站首页站长博客下载中心域名交易站长论坛域名主机免费电邮免费域名中文排行排名查询站长书库书籍教程下载
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
学院首页 网络编程 网页设计 图形图象 数 据 库 服 务 器 网络媒体 网络安全 个人专栏 站长CLUB 业界新闻 信息公告
 当前位置:首页 >> 网络编程 >> NET专区 >> 正文
公告通知
返回上级列表
资料搜索
相关文章
用DataList 控制元件开发的一个简单的留言本程序
[ 来源: | 作者: | 时间:2004-6-25 12:57:00 | 浏览:人次 ]
收藏到新浪ViVi 收藏到365KEY 收藏到我摘  字号选择〖    〗/ 双击滚屏 单击停止  
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.ADO" %>
<Html>
<Body BgColor="White">
<H3>DataList 控制元件<HR></H3>
<div id=Message runat=server></div>
<Form runat="server">
<table cellspacing=0 cellpadding=0 width="776" border=0>
<tr>
<td width="2%"><img height=20 src="images/up.gif" width=16></td>
<td width="98%" bgcolor=#333333 align="center"><font face=宋体 color=#ffffcc><b>留言本</b></font></td>
</tr>
</table>
<asp:DataList id="DataList1" runat="server"
Border="1" BorderColor="Black"
CellPadding="2" CellSpacing="0"
HeaderStyle-BackColor="#888888"
ItemStyle-BackColor="#eeeeee"
SelectedItemStyle-BackColor="#ffffff"
HeaderTemplate-ColSpan="3"
OnItemCommand="DataList_ItemCommand"
Width="776">

<!--编号模版-->
<template name="HeaderTemplate" >
<asp:LinkButton id="Tosay" runat="server" Text="我要发言" ForeColor="#ffffff"/>
<a href="temp.aspx"><font color="#ffffff">刷新界面</font></a>
<asp:LinkButton id="Mange" runat="server" Text="管理留言" ForeColor="#ffffff"/>
</template>


<!--内容模版-->
<template name="ItemTemplate">
<%# Container.DataItem("book_id")%>
<%# Container.DataItem("content")%>
<asp:LinkButton id="Detail" runat="server" Text="查看详细内容" ForeColor="#333333"/>
</template>

<!--查看留言模版-->
<template name="SelectedItemTemplate">
编号: <%# Container.DataItem("book_id")%><BR>
发言人: <%# Container.DataItem("username")%><BR>
时间: <%# Container.DataItem("post_time")%><BR>
内容: <%# Container.DataItem("content")%><BR>
<div align="right"><asp:LinkButton id="Title" runat="server" Text="关闭" ForeColor="#333333"/></div>
</template>

</asp:DataList>
<table id="foot" cellspacing=0 cellpadding=0 width="776" border=0 runat="server" visible="false">
<tr>
<td bgcolor=#000000>
<table cellspacing=1 cellpadding=3 width="100%" border=0>
<tr bgcolor=#ffffff>
<td>大名:<Input Type="Text" id="Username" Size=20 runat="server" /><br>
留言:<Input Type="Text" id="Content" Size=20 runat="server" />
<asp:LinkButton id="save" runat="server" Text="保存" OnClick="LinkButton1_Click" AutoPostBack/><br>
<asp:LinkButton id="close" runat="server" Text="关闭" OnClick="LinkButton2_Click"/></td>
</tr>
</table>
</td>
</tr>
</table>

<table cellspacing=0 cellpadding=0 width="776" border=0>
<tr>
<td width="98%" bgcolor=#333333 align="center"><font face=宋体 color=#ffffcc><b>    留言本</b></font></td>
<td width="2%"><img height=20 src="images/dn.gif" width=16></td>
</tr>
</table>


</Form>
<hr>

<asp:Label id="Label1" runat="server" />
</Body>
</Html>

<script Language="VB" runat="server">

Sub Page_Load(sender As Object, e As EventArgs)
DataList1.DataSource = CreateDataView( "data.mdb", "guestbook" )
DataList1.DataBind()
End Sub

Function CreateDataView( Db As String, Table As String ) As DataView
Dim Provider, ConnStr, SQL As String
Provider = "Microsoft.Jet.OLEDB.4.0;"
ConnStr = "Provider=" & Provider & _
"Data Source=" & Server.MapPath( Db )
Dim Cmd As ADODataSetCommand
Cmd = New ADODataSetCommand( "Select * from " & Table &" Order By post_time DESC", ConnStr )
Dim ds As DataSet = new DataSet()
Cmd.FillDataSet(ds, Table)
CreateDataView = new DataView(ds.Tables(Table))
End Function

Sub DataList_ItemCommand(sender As Object, e As DataListCommandEventArgs)
select case e.CommandSource.Text
case "我要发言"
foot.Visible = true

case "管理留言"

case "查看详细内容"
DataList1.SelectedIndex = e.Item.ItemIndex '查看留言模版被选中
case "关闭"
DataList1.SelectedIndex = -1
end select
DataList1.DataSource = CreateDataView( "data.mdb", "guestbook" )
DataList1.DataBind()
End Sub
Sub LinkButton2_Click(sender As Object, e As EventArgs)
foot.Visible = false
End Sub

Sub LinkButton1_Click(sender As Object, e As EventArgs)
Dim ConnStr, SQL As String
SQL = "Insert Into GuestBook (userName,post_time,content) Values ('"& Username.Value &"','"& DateTime.Now &"','"& Content.Value &"')"
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath( "data.mdb" )
Dim Cmd As ADOCommand = New ADOCommand( SQL, ConnStr )
Cmd.ActiveConnection.Open()
Cmd.Execute()
Message.InnerHtml = "<B>留言成功!</B>"
foot.Visible = false
Page.Navigate("temp.aspx")
End Sub
</script>

研究了好长时间,可最后那句Page.Navigate("temp.aspx")还是达不到及时刷新的效果:(,看精华区有篇C#编的是在PAGE_LOAD事件里面接收REQUEST.FORM对象后INSERT立即更新DATESET,不知道我这个怎么弄好...


[发送给好友]  [打印本页]  [关闭窗口]  [返回顶部]   转载请注明来源:http://edu.chinaz.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
栏目编辑: 设计风 责任编辑: chinaz.com
原始作者: 录入时间: 2004-6-25 12:57:00
信息来源: 投稿信箱: Edu#chinaz.com
设为首页 - 加入收藏 - 关于我们 - 广告服务 - 版权申明 - 友情链接 - 联系方式 - 总编信箱 - 会员投稿