您的位置:首页 > Web前端 > CSS

silverlight分页 —自定义仿论坛分页样式

2012-08-02 10:47 337 查看
最近项目用到silverlight、WCF相关技术。以前没有接触过,相当于零起步,在园子里面看了不少大神的文章,受益匪浅。现在项目接近完结,整理的时候发现一些自己编写的控件,把个别传上来,供新人参考学习。

这是一个分页控件,准确说只是一些分页的按钮,所以很简单了。先上一下效果图:



后面附件提供使用例子及源码,用得到的可以看一下。

这个自定义控件初始化的时候需要设置总页面、当前页面、显示的按钮数目,然后在点击的时候会触发的一个点击事件,同时可以得到控件所占的宽度,方便上层布局,使用的代码如下:

public partial class MainPage : UserControl
{
List<string> _gListTest;
/// <summary>
/// 分页控件及示例 子风(adswads@sina.com)
/// 可以随意修改及使用
/// </summary>
public MainPage()
{
InitializeComponent();

_giMPager.gPagerClick += new IM_UI.Control.IMPager.PagerClick(_giMPager_gPagerClick);

_gListTest = new List<string>();
for (int i = 0; i < 120; i++)
{
_gListTest.Add(i.ToString());
}

//按钮颜色及样式在IMPagerIco中设置

//目前只支持奇数,偶数自行去修改控件。最好设置为大于3的奇数
_giMPager.gPageCnt = 9;
//设置显示的页面和总页面,总页数为0时不显示,返回控件所占宽度
_giMPager.RefReshItems(1, _gListTest.Count);

_gtbNote.Text = "当前 第" + _giMPager.gPage.ToString() + "页,共" + _giMPager.gPageSum.ToString() + "页,显示按钮"
+ _giMPager.gPageCnt.ToString() + "个";
}

void _giMPager_gPagerClick(int page)
{
//注意在次设置刷新,刷新返回当前按钮所占长度,可以在上层设置布局
_giMPager.RefReshItems(page, _gListTest.Count);

_gtbNote.Text = "当前 第" + _giMPager.gPage.ToString() + "页,共" + _giMPager.gPageSum.ToString() + "页,显示按钮"
+ _giMPager.gPageCnt.ToString() + "个";
}
}


至于控件的编写就比较简单了,代码有详细的注释,有疑问的地方留言就可以。

下载源码:

http://files.cnblogs.com/adswads/20120802MyPager.rar
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: