仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 796|回复: 9
打印 上一主题 下一主题

[学习教程] ASP编程:在DataGrid中创立一个弹出式窗口

[复制链接]
不帅 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 23:10:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的datagrid|创立这篇文章来自DotNetJunkie的发起。他最后写信请求我们供应一个关于怎样创立在DataGrid中利用HyperLinkColumn的例子,能够在用户点击这一列后翻开一个新窗口,显现出此列的具体内容。在此之前我们已经经由过程email回覆他们,他倡议我们将这个办法到场他们的指南中,因而,就有了这篇文章。像我们本来的文章一样,它很复杂,可是复杂的包括代码的办法例能够更无效地启示开辟者。
  这个例子包括两个WebForms和一个CSS文件(一切的代码都能够下载)--第一个WebForm包括一个展现从Northwind库中读出的产物列表的DataGrid,hyperlink的states设为“SeeDetails”,一旦这个链接被点击,JavaScript片断Window.Open办法就会被挪用.用户想取得的关于产物的ProductID做为参数包括在URL中.包括另外一个DataGrid的第二个Webforms向用户列示他选中产物的一切详细细节。让我们来看一下datagrid-open.aspx和datagrid-open.aspx.cs
datagrid-open.aspx
<%@Pagelanguage="c#"Codebehind="datagrid-open.aspx.cs"AutoEventWireup="false"Inherits="study.datagrid_open"%>
<HTML>
<HEAD>
<title>datagrid-open</title>
<metaname="GENERATOR"Content="MicrosoftVisualStudio7.0">
<metaname="CODE_LANGUAGE"Content="C#">
<metaname="vs_defaultClientScript"content="JavaScript">
<metaname="vs_targetSchema"content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body>
<center>
<formrunat="server"ID="Form1">
<asp:datagridid="DataGrid1"runat="server"Font-Size="12"AutoGenerateColumns="False">
<Columns>
<asp:BoundColumnDataField="ProductID"HeaderText="ProductID"HeaderStyle-CssClass="HEADERSTYLE"ItemStyle-CssClass="ITEMSTYLEDEFAULT"/>
<asp:BoundColumnDataField="ProductName"HeaderText="ProductName"HeaderStyle-CssClass="HEADERSTYLE"ItemStyle-CssClass="ITEMSTYLEDEFAULT"/>
<asp:hyperlinkcolumnDataTextFormatString="ShowDetails..."DataTextField="ProductID"DataNavigateUrlField="ProductID"DataNavigateUrlFormatString="javascript:varwin=window.open("datagrid-show.aspx?ProductID={0}",null,"width=700,height=200");"HeaderText="SeeDetails"HeaderStyle-CssClass="HEADERSTYLE"ItemStyle-CssClass="ITEMSTYLEHYPERLINK"/>
</Columns>
</asp:datagrid>
</form>
</center>
</body>
</HTML>

datagrid-open.aspx.cs
usingSystem;
usingSystem.Collections;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Web;
usingSystem.Web.SessionState;
usingSystem.Web.UI;
usingSystem.Web.UI.WebControls;
usingSystem.Web.UI.HtmlControls;
usingSystem.Data.SqlClient;
namespacestudy
{
///<summary>
///datagrid_open的择要申明。
///</summary>
publicclassdatagrid_open:System.Web.UI.Page
{
protectedSystem.Web.UI.WebControls.DataGridDataGrid1;
protectedSystem.Web.UI.HtmlControls.HtmlFormForm1;
#regionUserDefinedCode
privatevoidPage_Load(objectsender,System.EventArgse)
{
if(!this.IsPostBack)
this.BindData();
}



protectedvoidBindData()
{
SqlCommandcmd=newSqlCommand("SELECTTOP10ProductID,ProductNameFROMProducts",con("Server=dwserver;DataBase=Northwind;UserId=sa;Password=123456"));
this.DataGrid1.DataSource=cmd.ExecuteReader(CommandBehavior.CloseConnection);
this.DataGrid1.DataBind();
}
protectedSqlConnectioncon(System.StringConnectionString)
{
SqlConnectionc=newSqlConnection(ConnectionString);
c.Open();
returnc;
}
#endregion



#regionWebFormDesignergeneratedcode
overrideprotectedvoidOnInit(EventArgse)
{
//
//CODEGEN:该挪用是ASP.NETWeb窗体计划器所必须的。
//
InitializeComponent();
base.OnInit(e);
}
///<summary>
///计划器撑持所需的办法-不要利用代码编纂器修正
///此办法的内容。
///</summary>
privatevoidInitializeComponent()
{
this.Load+=newSystem.EventHandler(this.Page_Load);
}
#endregion
}
}

  除DataNavigateUrlFormatString外的确没甚么坚苦的,你能够注重到我实践上间接利用了一个javascript片断(注:你也能够复杂地创立一个.js文件或在WebForm中利用<script></script>),javascript云云提高,以是这里不再具体解说。功效上,它翻开一个新的窗口,带ProductID查询字串的datagrid_show.aspx,ProductID的值来自我们的数据源。我们能够看这两个文件:
datagrid_show.aspx
<%@Pagelanguage="c#"Codebehind="datagrid-show.aspx.cs"AutoEventWireup="false"Inherits="study.datagrid_show"%>
<HTML</p>专业性的服务。有的ASP商提供垂直型的应用服务,针对某一特定行业提供应用服务。
若相依 该用户已被删除
沙发
发表于 2015-1-20 07:47:31 | 只看该作者
掌握asp的特性而且一定要知道为什么。
灵魂腐蚀 该用户已被删除
板凳
发表于 2015-1-21 09:37:02 | 只看该作者
兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
再见西城 该用户已被删除
地板
发表于 2015-1-30 13:49:37 | 只看该作者
我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.
精灵巫婆 该用户已被删除
5#
发表于 2015-2-6 12:59:57 | 只看该作者
不能只是将它停留在纸上谈兵的程度上。
柔情似水 该用户已被删除
6#
发表于 2015-2-16 04:48:46 | 只看该作者
不能只是将它停留在纸上谈兵的程度上。
乐观 该用户已被删除
7#
发表于 2015-3-4 23:48:55 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
飘灵儿 该用户已被删除
8#
发表于 2015-3-11 21:29:57 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
因胸联盟 该用户已被删除
9#
发表于 2015-3-19 14:17:56 | 只看该作者
以HTML语言整合(HTML负责界面上,ASP则负责功能上)形成一个B/S(浏览器/服务器)模式的网页程序。
蒙在股里 该用户已被删除
10#
发表于 2015-3-28 10:38:32 | 只看该作者
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 20:46

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表