asp.net DataGrid控件中彈出詳細信息窗口
更新時間:2008年12月24日 23:53:15 作者:
在DataGrid控件里單擊某一行的超級鏈接時,彈出一個新的頁面顯示出該行的詳細信息
在DataGrid控件中添加超鏈接如下步驟:
(1) 在"設(shè)計"視圖中,選擇DataGrid控件,然后單擊"屬性"窗口底部的"屬性生成器"鏈接。
(2) 在"DataGrid屬性"對話框中單擊"列"選項卡。
(3) 在"可用列"選項框中,選擇"超級鏈接列"并單擊"添加"按鈕。如下圖進行添加超級鏈接列的設(shè)置。

(4) 若要將數(shù)據(jù)字段用作目標頁URL的源,請從"URL字段"文本框中填寫該字段名。在這種情況上,可以使用
"URL 格式字符串"選項框為該超級鏈接文本指定格式設(shè)置表達式。
"URL格式字符口串"目標URL為:javascript:varwin=window.open('detail.aspx?ID={0}',null,'width=300,height=200');window.Close();
分別創(chuàng)建兩個頁面,一個用來添加DataGrid控件并設(shè)置超級鏈接列,而后者是被彈出的頁面,后者頁面的頁面代碼好下:
<form id="Form1" method="post" runat="server">
<FONT face="宋體">
<TABLE id="Table1" style="Z-INDEX: 101; LEFT: 32px; POSITION: absolute; TOP: 32px" cellSpacing="0"
cellPadding="1" width="300" border="0">
<TR>
<TD style="WIDTH: 65px">姓名:</TD>
<TD>
<asp:TextBox id="tbxName" runat="server" Width="184px"></asp:TextBox></TD>
</TR>
<TR>
<TD style="WIDTH: 65px">生日:</TD>
<TD>
<asp:TextBox id="tbxBri" runat="server" Width="184px"></asp:TextBox></TD>
</TR>
<TR>
<TD style="WIDTH: 65px">地址:</TD>
<TD>
<asp:TextBox id="tbxAdd" runat="server" Width="184px"></asp:TextBox></TD>
</TR>
<TR>
<TD style="WIDTH: 65px">城市:</TD>
<TD>
<asp:TextBox id="tbxCity" runat="server" Width="184px"></asp:TextBox></TD>
</TR>
</TABLE>
</FONT>
</form>
后者頁面的后臺代碼:
頁面的載入事件
private void Page_Load(object sender, System.EventArgs e)
{
// 在此處放置用戶代碼以初始化頁面
if(!IsPostBack)
{
this.DataGridBind();
}
}
數(shù)據(jù)綁定事件
private void DataGridBind()
{
string EmpID = Request["ID"].ToString();
//調(diào)用Web.config數(shù)據(jù)庫連接字符
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"].ToString());
SqlCommand cmd = new SqlCommand("select LastName,FirstName,BirthDate,Address,City from Employees where EmployeeID="+EmpID.ToString(),conn);
conn.Open();
try
{
SqlDataReader dr = cmd.ExecuteReader();
if(dr.Read())
{
this.tbxName.Text = dr["LastName"].ToString();
this.tbxBri.Text = Convert.ToDateTime(dr["BirthDate"]).ToLongDateString();
this.tbxAdd.Text = dr["Address"].ToString();
this.tbxCity.Text = dr["City"].ToString();
}
}
catch(Exception e)
{
Response.Write(e.ToString());
}
finally
{
conn.Close();
}
}
編譯運行點擊設(shè)置超級鏈接列就可以彈出相應(yīng)行的詳細信息
(1) 在"設(shè)計"視圖中,選擇DataGrid控件,然后單擊"屬性"窗口底部的"屬性生成器"鏈接。
(2) 在"DataGrid屬性"對話框中單擊"列"選項卡。
(3) 在"可用列"選項框中,選擇"超級鏈接列"并單擊"添加"按鈕。如下圖進行添加超級鏈接列的設(shè)置。

(4) 若要將數(shù)據(jù)字段用作目標頁URL的源,請從"URL字段"文本框中填寫該字段名。在這種情況上,可以使用
"URL 格式字符串"選項框為該超級鏈接文本指定格式設(shè)置表達式。
"URL格式字符口串"目標URL為:javascript:varwin=window.open('detail.aspx?ID={0}',null,'width=300,height=200');window.Close();
分別創(chuàng)建兩個頁面,一個用來添加DataGrid控件并設(shè)置超級鏈接列,而后者是被彈出的頁面,后者頁面的頁面代碼好下:
<form id="Form1" method="post" runat="server">
<FONT face="宋體">
<TABLE id="Table1" style="Z-INDEX: 101; LEFT: 32px; POSITION: absolute; TOP: 32px" cellSpacing="0"
cellPadding="1" width="300" border="0">
<TR>
<TD style="WIDTH: 65px">姓名:</TD>
<TD>
<asp:TextBox id="tbxName" runat="server" Width="184px"></asp:TextBox></TD>
</TR>
<TR>
<TD style="WIDTH: 65px">生日:</TD>
<TD>
<asp:TextBox id="tbxBri" runat="server" Width="184px"></asp:TextBox></TD>
</TR>
<TR>
<TD style="WIDTH: 65px">地址:</TD>
<TD>
<asp:TextBox id="tbxAdd" runat="server" Width="184px"></asp:TextBox></TD>
</TR>
<TR>
<TD style="WIDTH: 65px">城市:</TD>
<TD>
<asp:TextBox id="tbxCity" runat="server" Width="184px"></asp:TextBox></TD>
</TR>
</TABLE>
</FONT>
</form>
后者頁面的后臺代碼:
頁面的載入事件
private void Page_Load(object sender, System.EventArgs e)
{
// 在此處放置用戶代碼以初始化頁面
if(!IsPostBack)
{
this.DataGridBind();
}
}
數(shù)據(jù)綁定事件
private void DataGridBind()
{
string EmpID = Request["ID"].ToString();
//調(diào)用Web.config數(shù)據(jù)庫連接字符
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"].ToString());
SqlCommand cmd = new SqlCommand("select LastName,FirstName,BirthDate,Address,City from Employees where EmployeeID="+EmpID.ToString(),conn);
conn.Open();
try
{
SqlDataReader dr = cmd.ExecuteReader();
if(dr.Read())
{
this.tbxName.Text = dr["LastName"].ToString();
this.tbxBri.Text = Convert.ToDateTime(dr["BirthDate"]).ToLongDateString();
this.tbxAdd.Text = dr["Address"].ToString();
this.tbxCity.Text = dr["City"].ToString();
}
}
catch(Exception e)
{
Response.Write(e.ToString());
}
finally
{
conn.Close();
}
}
編譯運行點擊設(shè)置超級鏈接列就可以彈出相應(yīng)行的詳細信息
您可能感興趣的文章:
- asp.net實現(xiàn)刪除DataGrid的記錄時彈出提示信息
- asp.net中GridView和DataGrid相同列合并實現(xiàn)代碼
- ASP.NET MVC中EasyUI的datagrid跨域調(diào)用實現(xiàn)代碼
- ASP.NET MVC使用EasyUI的datagrid多選提交保存教程
- asp.net DataGrid 中文字符排序的實現(xiàn)代碼
- asp.net DataGridView導出到Excel的三個方法[親測]
- 在asp.net中實現(xiàn)datagrid checkbox 全選的方法
- 決定何時使用 DataGrid、DataList 或 Repeater(ASP.NET 技術(shù)文章)
- asp.Net JS取母板頁控件值的簡單方法
- Asp.net清空控件值的方法(可自定義控件類型)
- asp.net 保存、修改沒有 runat=server控件的控件值的一個解決方案
- ASP.NET中訪問DataGrid中所有控件值的方法
相關(guān)文章
將文件上傳、下載(以二進制流保存到數(shù)據(jù)庫)實現(xiàn)代碼
將文件以二進制流的格式寫入數(shù)據(jù)庫:首先獲得文件路徑,然后將文件以二進制讀出保存在一個二進制數(shù)組中具體請祥看本文,希望對你有所幫助2013-05-05
asp.net DataGrid 中文字符排序的實現(xiàn)代碼
在論壇上看到有位朋友希望對中文按拼音進行排序,剛好最近有點空,貼一份原來一個同事寫的一個排序類,僅稍微改動了下下,拿出來分享下.2009-09-09
ASP.NET中Validation驗證控件正則表達式特殊符號的說明
本文介紹asp.net中RegularExpressionValidator控件中的幾種特殊字符串使用規(guī)則,并做了代碼演示,希望對大家有所幫助。2016-04-04
asp.net gridview的Rowcommand命令中獲取行索引的方法總結(jié)
asp.net gridview的Rowcommand命令中獲取行索引的方法總結(jié),需要的朋友可以參考下。2010-05-05
ASP.NET通過更改Url進行頁面?zhèn)髦档膶崿F(xiàn)代碼
這篇文章主要介紹了ASP.NET通過更改Url進行頁面?zhèn)髦档膶崿F(xiàn)代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04
.Net?Core跨平臺應(yīng)用開發(fā)串口篇HelloArm
這篇文章介紹了.Net?Core跨平臺應(yīng)用開發(fā)串口篇HelloArm,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-01-01

