using system.componentmodel;using system.web.ui;
[assembly: tagprefix("jinlong.control", "jinlong")]
namespace jinlong.control
:repeater id=\"rep_list\" runat=server enableviewstate=\"false\" onprerender=\"rep_list_prerender\">
")]public class repeater : system.web.ui.webcontrols.repeater
#region __________屬性__________
[bindable(true), category("data"), defaultvalue("1"), description("記錄總數")]
public int recordcount
set}
[bindable(true), category("data"), defaultvalue("1"), description("每頁顯示記錄數")]
public int pagesize
set}
[bindable(true), category("data"), defaultvalue(""), description("當前頁鏈結")]
public string pagelink
set}
[bindable(true), category("data"), defaultvalue("1"), description("當前頁")]
public int currentpage
set}
#endregion
/// /// 輸出html,在瀏覽器中顯示控制項
///
/// 要寫出到的 html 編寫器
protected override void render(htmltextwriter output)
/// /// 分頁函式
///
/// 總記錄數
/// 每頁記錄數
/// 當前頁數
/// url引數
///
public string pagination(int recordcount, int pagesize, int currentpage, string url)
//計算總頁數
if (pagesize != 0)
next = currentpage + 1;
pre = currentpage - 1;
startcount = (currentpage + 5) > allcurrentpage ? allcurrentpage - 9 : currentpage - 4;//中間頁起始序號
//中間頁終止序號
endcount = currentpage < 5 ? 10 : currentpage + 5;
if (startcount < 1) //為了避免輸出的時候產生負數,設定如果小於1就從序號1開始
if (allcurrentpage < endcount) //頁碼+5的可能性就會產生最終輸出序號大於總頁碼,那麼就要將其控制在頁碼數之內
currentpagestr = "共" + allcurrentpage + "頁 ";
currentpagestr += currentpage > 1 ? "首頁
//中間頁處理,這個增加時間複雜度,減小空間複雜度
for (int i = startcount; i <= endcount; i++)
return currentpagestr;}}
}
自定義控制項之萬能Repeater原始碼
using system.componentmodel using system.web.ui assembly tagprefix jinlong.control jinlong namespace jinlong.control repeater id rep list runat server...
自定義實現陣列排序,萬能排序函式
arr.sort 排序,排序分為預設排序和自定義排序 預設排序,該方法會呼叫每個陣列項的tostring 方法,然後按照字串行排序 自定義排序,該排序應該考慮分很多種,有純數字排序,純單個字母排序,多字母單詞排序,按要求對陣列內的物件進行排序等等。排序除了陣列項的要求以外還存在公升序 降序的要求。v...
自定義簡單的萬能介面卡
介面卡在android中非常的常用,像listview,gridview,下拉框。中都比較常用,這篇部落格介紹乙個萬能的介面卡,雖然比較簡單,但是用處比較大。不用乙個個再去建立介面卡了 此列子建立的是乙個虛類,使用的時候需要繼承此類,並實現相應的方法。public abstract class ba...