改變Repeater控制項中按鈕顏色

2022-02-13 19:46:01 字數 2546 閱讀 8303

昨晚有在論壇看到一帖,手上的工作一直忙到現在,insus.net現在抽點時間嘗試實現它。

insus.net沒有使用資料庫作為資料來源,而是使用list作為資料來源。因此你在這篇博文中學到很多有關泛型的知識。另外insus.net使用checkboxlist來替代多頁面,讓使用者選擇checkboxlist的選項將會給repeater有多值顯示,也就是繫結多個銨鈕。

建立乙個物件,它將用來儲存資料來源。這個物件有三個屬性[coloursystem],[colourname]和[rgb]

insus.net.colour

using

system;

using

system.collections.generic;

using

system.linq;

using

system.web;

//////

summary description for colour

///namespace

insus.net

set

}public

string

colourname

set

}public

string

rgb

set

}public

colour()

public colour(string coloursystem, string colourname,string

rgb)}}

物件建立好之後,我們淮備一些資料來填充它。

view code

private listorgdatasource()

接下來,我們建立乙個網頁,如default.aspx,然後拉乙個checkboxlist控制項入網頁中:

現在,我們需要從上面準備好的物件中過濾一些資料來繫結至這個checkboxlist控制項,從list<

colour

>

泛型中過濾資料:

過濾好資料,我們就可以繫結給checkboxlist控制項。

看看效果:

到這裡,你學到什麼?學到了過濾list的資料,還學會了把list繫結至checkboxlist控制項內。

跟著,我們在default.aspx網頁內,寫repeater控制項, 控制項內繫結乙個button按鈕:

由於這個repeter控制項是隨引數(coloursystem)不同,而顯示不同的資料,所在我們需要寫乙個方法,去過濾list<

下面,我們還要寫乙個方法,就是想辦法把checkboxlist控制項選項選中的存起來。

現在,我們需要對checkboxlist控制項選擇時,有對repeater控制項資料繫結異動,在default.aspx網頁上,在checkboxlist控制項新增乙個屬性和乙個事件:

我們在onselectedindexchanged事件中,繫結repeater控制項:

看到否? list<

colour

> 泛型繫結給repeater控制項,相信你也會了。看看效果吧:

寫到這裡,已經接近尾聲了,也是最重要的部分,怎樣寫呢,要求是使用者點選銨鈕時,能改變銨鈕的顏色,其實這個也是repeater控制項內銨鈕事件異動而已。

我們在default.aspx網頁的repeater控制項,新增乙個事件:

去default.aspx.cs寫上面的事件:

上圖中,即是說把reaper控制項的button銨鈕的click事件, insusbutton_click:

第110行**,就是改變按鈕的顏色。看看效果:

大功告成。

Repeater控制項

1.repeater 控制項是模板化的資料繫結列表,repeater 控制項是 無外觀的 即 它不具有任何內建布局或樣式,也就不會產生任何資料控制 來控制資料的顯示。2.repeater控制項的樣式得在資料來源頁用模板來做。可以用表或者div。例如 eval id 然後在後台繫結就行。if e.co...

Repeater控制項

在顯示資料時有另乙個主要的控制項 repeater控制項。問得最頻繁的問題是,在什麼時候使用哪個控制項。表9 6對這些控制項的差別作出了總結。表9 6 比較repeater datalist和gridview控制項 特 性 repeater datalist gridview 支援表 table 布...

repeater控制項分頁

region 資料來源繫結 分頁 初始資料繫結 public void databindtorepresouce string condition else int curpage convert.toint32 this.la page.text pageddatasource ps new pa...