詳解datalist的用法_.Net教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:解讀訪問本機(jī)IIS站點(diǎn)被要求輸入用戶名和密碼訪問發(fā)布在本機(jī)IIS上的站點(diǎn)時(shí),老彈出一個(gè)框要求輸入用戶名密碼,而輸入本機(jī)的管理員帳戶,卻還是彈出這個(gè)框來。這個(gè)問題非常煩,網(wǎng)上的意見如下: 1.設(shè)置發(fā)布目錄文件夾的訪問權(quán)限,允許everyone訪問。 2.設(shè)置IIS安全選項(xiàng)卡中,允許匿名訪問。 這里漏過了一
設(shè)計(jì)模版:頁(yè)眉
<HeaderTemplate>
</HeaderTemplate>
頁(yè)腳
<FooterTemplate>
</FooterTemplate>
數(shù)據(jù)記錄
<ItemTemplate>
</ItemTemplate>
<AlternatingItemTemplate> 交替顯示項(xiàng)
</AlternatingItemTemplate>
<SelectedItemTemplate>選中時(shí)的顯示方式
</SelectedItemTemplate>
<EditItemTemplate> 編輯時(shí)的顯示方式
</EditItemTemplate>
<SeparatorTemplate> 數(shù)據(jù)記錄分隔符
</SeparatorTemplate>
編輯模版,里面可以嵌入控件,綁定數(shù)據(jù)。
<ItemTemplate>
<table>
<tr>
<td><%# DataBinder.Eval(Container.DataItem, "持股名稱") %></td>
<td><%# DataBinder.Eval(Container.DataItem, "市值", "{0:n}") %></td>
<td><%# DataBinder.Eval(Container.DataItem, "凈值", "{0:n}") %></td>
</tr>
</table>
</ItemTemplate>
設(shè)置外觀
RepeatLayout 屬性設(shè)置顯示方式
RepeatDirection 顯示方向
RepeatColumns 列數(shù)
事件
加入模版列的按鈕會(huì)將其click事件反升到 ItemCommand 事件,也可設(shè)置 CommandName
來響應(yīng)不同的事件,如設(shè)為:edit,即引發(fā)EditCommand()等。
注:若設(shè)為:select 則會(huì)引發(fā)SelectedIndexChanged 和ItemCommand事件
SelectedItemTemplate模版; 添加詳細(xì)信息的控件,當(dāng)用戶選擇了該項(xiàng),選擇模版則顯示。
private void DataList1_ItemCommand(……)
{ switch(e.CommandName)
{
case "select":
this.DataList1.SelectedIndex=e.Item.ItemIndex;
string s=(string)this.DataList1.DataKeys[e.Item.ItemIndex];
//在此獲得該條記錄的詳細(xì)數(shù)據(jù),在SelectedItemTemplate模版里顯示。
break;
case "unselect":
this.DataList1.SelectedIndex=-1;
break;
}
this.DataList1.DataBind();//一定要
}
EditItemTemplate模版
編輯:
this.DataList1.EditItemIndex=e.Item.ItemIndex;
this.DataList1.DataBind();
更新:
得到主鍵
string s=(string)this.DataList1.DataKeys[e.Item.ItemIndex];
得到模版里的控件
TextBox box=(TextBox)e.Item.FindControl("TextBox1");
更新記錄
this.DataList1.DataBind();
取消:
this.DataList1.EditItemIndex=-1;
this.DataList1.DataBind();
刪除項(xiàng)
一次勾選多條記錄,一次刪除
foreach(DataListItem i in this.DataList1.Items)
{
bool IsChecked=((CheckBox)i.FindControl("deletectr")).Checked;
if(IsChecked)
{
string s=(string)this.DataList1.DataKeys[e.Item.ItemIndex];
刪除操作 }
}
運(yùn)行中自定義DataList控件
//當(dāng)創(chuàng)建DataList控件中的任意項(xiàng)時(shí)
private void DataList1_ItemCreated(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
switch(e.Item.ItemType)
{ case ListItemType.Header:
e.Item.ForeColor=Color.Red;
e.Item.BackColor=Color.Black;
break;
case ListItemType.Item:
e.Item.BackColor=Color.Black;
break;
}
}
//當(dāng)模版中的項(xiàng)被數(shù)據(jù)綁定時(shí)發(fā)生,數(shù)據(jù)被顯示到客戶端前加以訪問的最后機(jī)會(huì)
private void DataList1_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
if((e.Item.ItemType==ListItemType.Header)||(e.Item.ItemType==ListItemType.Item))
{
System.Data.Common.DbDataRecord drv=
(System.Data.Common.DbDataRecord)e.Item.DataItem;
if((decimal)drv["庫(kù)存量"]<1000)
{
e.Item.ForeColor=Color.Red;
}
}
}
另種方式
if((e.Item.ItemType==ListItemType.Header)||(e.Item.ItemType==ListItemType.Item))
{
DataRowView drv=(DataRowView)e.Item.DataItem;
string department=(string)drv["部門"];
switch(department)
{ case "銷售部":
e.Item.BackColor=Color.Black;
break;
case "技術(shù)部":
e.Item.BackColor=Color.Red;
break; }
}
分享:ASP.NET如何改變checkboxlist選中項(xiàng)字體顏色1.default.aspx設(shè)計(jì)頁(yè)面 %@PageLanguage=C#AutoEventWireup=trueCodeFile=Default.aspx.csInherits=_Default% EhtmlPUBLIC-//W3C//DTDXHTML1.0xhtml1-transitional.dtd htmlxmlns=http
相關(guān).Net教程:
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實(shí)例(可帶附件)
- js實(shí)現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實(shí)現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進(jìn)度條的實(shí)現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報(bào)表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(kù)(連接字符串的配置及獲取)
- asp.net頁(yè)面?zhèn)髦禍y(cè)試實(shí)例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲(chǔ)過程實(shí)現(xiàn)分頁(yè)示例代碼
.Net教程Rss訂閱編程教程搜索
.Net教程推薦
- .Net筆記:System.IO之windows文件操作的深入分析
- 徹底放棄IIS讓Apache也支持ASP.NET
- 解讀.NET 2.0中Hashtable快速查找的方法
- .NET初學(xué)者推薦課程 asp.net錯(cuò)誤代碼大全
- DataTable數(shù)據(jù)導(dǎo)出成Excel文件的小例子
- ASP.NET 2.0高級(jí)數(shù)據(jù)處理之?dāng)?shù)據(jù)綁定
- c# md5 加密函數(shù)
- 使用ASP.NET內(nèi)置類生成圖片縮略圖及水印
- 遠(yuǎn)程抓取GOOGLE的自動(dòng)翻譯結(jié)果
- ASP.NET立即上手教程(2)
- 相關(guān)鏈接:
- 教程說明:
.Net教程-詳解datalist的用法
。