2011-10-19 62 views
1

方案:在Page1.aspx中,用戶提交郵編&城市和命中輸入。然後我將控件傳遞給Page2.aspx,郵政編碼爲& City。ASPX頁面顯示SQL表中的多條記錄(DetailsView方法)

在頁面2中,我將從匹配郵政編碼&城市的表格中進行查詢。如果找到,我會得到1到n個記錄。

現在我需要以下面的方式顯示記錄。


客戶名稱:customer1表

客戶電話:201201201

顧客市:NewCity


客戶名稱:顧客2

客戶電話:303013010

顧客市:Oldcity酒店


客戶名稱:Customer3

客戶電話:45646466

顧客市:CurrentCity


上面的每個記錄是兩列第一列頭和第二個值。我想在一個頁面中顯示多達8個客戶(以上我展示了3個客戶),然後將頁碼編號。點擊下一頁,顯示下一組8條記錄。

請建議最佳控制。我想到了DetailsView,但不知道是否可以使用Detailsview在一個頁面中顯示多達8次的事件。

請建議或任何其他選擇。

回答

2

這是實施例如何顯示使用中繼器控制的結果....

ASP.NET中繼器用於與AlternatingItemTemplate,SeparatorTemplate,HeaderTemplate中和FooterTemplates以及ItemTemplate中。

<asp:Repeater ID="NewsListRepeater" runat="server"> 

<HeaderTemplate>Funky Title<br /><br /></HeaderTemplate> 

    <ItemTemplate> 
    <%# DataBinder.Eval(Container.DataItem, "SpecialNumber") %><br /> 
    <%# DataBinder.Eval(Container.DataItem, "SpecialLetters") %><br /> 
    </ItemTemplate> 

    <SeparatorTemplate> 
    ------<br /> 
    </SeparatorTemplate> 

<AlternatingItemTemplate> 
    <i><%# DataBinder.Eval(Container.DataItem, "SpecialNumber") %></i><br /> 
    <i><%# DataBinder.Eval(Container.DataItem, "SpecialLetters") %></i><br /> 
    </AlternatingItemTemplate> 

    <FooterTemplate><br />End of the funky stuff</FooterTemplate> 

在代碼隱藏文件,下面的代碼被用於創建數據表,然後創建一些簡單的數據裝進數據表只是爲了演示的目的,我們然後綁定到Repeater。在現實世界中,您會將Repeater綁定到數據庫調用的結果或者甚至是XML文件。

protected void Page_Load(object sender, EventArgs e) 
{ 
    // create a datatable 
    DataTable newsDataTable = new DataTable(); 

    // add some columns to our datatable 
    newsDataTable.Columns.Add("SpecialNumber"); 
    newsDataTable.Columns.Add("SpecialLetters"); 

    // create some rows in our data 
    string _letters = "ABCDE"; 
    for (int i = 1; i <= 5; i++) 
    { 
    DataRow newsDataRow = newsDataTable.NewRow(); 
    newsDataRow["SpecialNumber"] = i; 
    newsDataRow["SpecialLetters"] = _letters.Substring(5 -i); 
    newsDataTable.Rows.Add(newsDataRow); 
    } 

    // bind our datatable to our repeater 
    NewsListRepeater.DataSource = newsDataTable; 
    NewsListRepeater.DataBind(); 
} 

和放出來是這樣的....

Funky Title 

1 
E 
------ 
2 
DE 
------ 
3 
CDE 
------ 
4 
BCDE 
------ 
5 
ABCDE 

End of the funky stuff 

我希望它會幫助你....

1

您可以使用任何模板化的數據綁定控件,例如DataList或DataRepeater。

嘗試將其添加到頁面,然後從右鍵單擊選擇編輯項目模板命令。然後,您可以添加您需要的所有控件,如標籤。

+0

是否有好的共享任何的例子嗎?我也會檢查。 – Anirudh

+1

聽說過谷歌或MSDN的? :-) –