当前位置: 首页 > 编程日记 > 正文

改变Repeater控件中按钮颜色

昨晚有在论坛看到一帖,手上的工作一直忙到现在,Insus.NET现在抽点时间尝试实现它。


Insus.NET没有使用数据库作为数据源,而是使用List<T>作为数据源。因此你在这篇博文中学到很多有关泛型的知识。另外Insus.NET使用CheckBoxList来替代多页面,让用户选择CheckBoxList的选项将会给Repeater有多值显示,也就是绑定多个铵钮。

创建一个对象,它将用来存储数据源。这个对象有三个属性[ColourSystem],[ColourName]和[RGB]

Insus.NET.Colour
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;/// <summary>
/// Summary description for Colour
/// </summary>
namespace Insus.NET
{public class Colour{private string _ColourSystem;private string _ColourName;private string _RGB;public string ColourSystem{get { return _ColourSystem; }set { _ColourSystem = value; }}public string ColourName{get { return _ColourName; }set { _ColourName = value; }}public string RGB{get { return _RGB; }set { _RGB = value; }}public Colour(){//// TODO: Add constructor logic here//
        }public Colour(string colourSystem, string colourName,string rgb){this._ColourSystem = colourSystem;this._ColourName = colourName;this._RGB = rgb;}}
}


对象创建好之后,我们淮备一些数据来填充它。

View Code
private List<Colour> OrgDataSource(){List<Colour> oData = new List<Colour>();oData.Add(new Colour("Warm color", "red", "ff0000"));oData.Add(new Colour("Warm color", "orange", "ffa500"));oData.Add(new Colour("Warm color", "yellow", "ffff00"));oData.Add(new Colour("Cool color", "green", "008000"));oData.Add(new Colour("Cool color", "blue", "0000ff"));return oData;}


接下来,我们创建一个网页,如Default.aspx,然后拉一个CheckBoxList控件入网页中:


现在,我们需要从上面准备好的对象中过滤一些数据来绑定至这个CheckBoxList控件,从List<Colour>泛型中过滤数据:


过滤好数据,我们就可以绑定给CheckBoxList控件。

看看效果:


到这里,你学到什么?学到了过滤List<T>的数据,还学会了把List<T>绑定至CheckBoxList控件内。

跟着,我们在Default.aspx网页内,写Repeater控件, 控件内绑定一个Button按钮:



由于这个Repeter控件是随参数(ColourSystem)不同,而显示不同的数据,所在我们需要写一个方法,去过滤List<Colour> OrgDataSource()


下面,我们还要写一个方法,就是想办法把CheckBoxList控件选项选中的存起来。


现在,我们需要对CheckBoxlist控件选择时,有对Repeater控件数据绑定异动,在Default.aspx网页上,在CheckBoxList控件添加一个属性和一个事件:

我们在OnSelectedIndexchanged事件中,绑定Repeater控件:


看到否? List<Colour> 泛型绑定给Repeater控件,相信你也会了。看看效果吧:



写到这里,已经接近尾声了,也是最重要的部分,怎样写呢,要求是用户点击铵钮时,能改变铵钮的颜色,其实这个也是Repeater控件内铵钮事件异动而已。
我们在Default.aspx网页的Repeater控件,添加一个事件:


去Default.aspx.cs写上面的事件:


上图中,即是说把Reaper控件的Button铵钮的Click事件, InsusButton_Click:

第110行代码,就是改变按钮的颜色。看看效果:


大功告成。

相关文章:

CSDN湘苗培优,遇见更好的自己

CSDN 湘苗培优报名火热进行中&#xff01;JOIN US号外&#xff01;号外&#xff01;“湘苗培优”报名火热进行中&#xff01;????????????????????????为什么要报名“湘苗培优”只要你想学&#xff0c;这里有CSDN技术认证、企业导师零距离技术交流求职…

两个无序单链表,排序后合并成一个有序链表

两个无序单链表&#xff0c;排序后合并成一个有序链表算法思想&#xff1a;用冒泡法&#xff0c;对链表1和2进行排序&#xff0c;对排序后的两个链表&#xff0c;从小到大进行循环&#xff0c;装入链表3中。#include<stdio.h>#include<stdlib.h>struct stud/*定义链…

FEC之我见三

继续上文讲解&#xff1a; 3&#xff09;标准的RTP头结构如下所示&#xff1a; 其中第一个字节中的x标志位是否扩展了RTP头&#xff0c;RTP协议允许用户自定义的扩展&#xff0c;扩展的字段紧挨上述RTP固定头。RTP扩展投中承载如下信息&#xff1a;1).当前包所在的Group组序号&…

集体智慧及其常用算法

集体智慧定义是指由许多的个体通过合作与竞争中所显现出来的智慧&#xff0c;集体智慧是一种共享的或者群体的智能。它是从许多个体的合作与竞争中涌现出来的。集体智慧在细菌、动物、人类以及计算机网络中形成&#xff0c;并以多种形式的协商一致的决策模式出现。常用算法如下…

带你「周游世界」的 MODNet 算法

来源 | Jack Cui责编 | 晋兆雨头图 | CSDN下载自视觉中国最近又有一个算法火了&#xff0c;不知道你们看到没&#xff1f;直接看效果&#xff01;效果这么稳定的人像 Image Matting 算法真的不多&#xff0c;并且还能进行实时处理&#xff01;处理视频、图像&#xff0c;不在话…

ASP.NET格式化日期

1.绑定时格式化日期方法: <ASP:BOUNDCOLUMN DATAFIELD "JoinTime " DATAFORMATSTRING "{0:yyyy-MM-dd} " > <ITEMSTYLE WIDTH "18% " > </ITEMSTYLE &g…

docker的网络架构配置

http://xiaorenwutest.blog.51cto.com docker 网络架构模默认情况下&#xff0c;容器可以建立到外部网络的连接&#xff0c;但是外部网络无法连接到容器。Docker 允许通过外部访问容器或容器互联的方式来提供网络服务外部访问容器:容器中可以运行一些网络应用&#xff0c;要让外…

【官方福利】CSDN内测师限时申请,参与赢年末礼包

各位程序猿们都下载CSDN官方出品的插件了吧&#xff1f;什么&#xff1f;还有不知道插件是什么的同学&#xff1f;&#xff1f;你错过了太多&#xff01;更酷更高效的浏览器插件&#xff0c;一键万能操作&#xff0c;新标签页极简个性&#xff0c;让你的工作效率UP UP UP&#…

Sql年月日计算方法

通常&#xff0c;你需要获得当前日期和计算一些其他的日期&#xff0c;例如&#xff0c;你的程序可能需要判断一个月的第一天或者最后一天。你们大部分人大概都知道怎样把日期进行分割&#xff08;年、月、日等&#xff09;&#xff0c;然后仅仅用分割出来的年、月、日等放在几…

读《每天懂一点成功概率学》

概率出现某种结果的数量/出现所有结果的数量 所谓“数学概率”&#xff0c;就是理论上计算出来的概率&#xff0c;例如抛硬币时&#xff0c;只有正面和反面两种结果&#xff0c;因此正面出现的概率就是1/2。 另一方面&#xff0c;我们反复抛硬币&#xff0c;根据实际结果计算出…

AV1时代要来了,超高清视频时代视频编码技术的机遇与挑战

近些年随着视频行业的迅猛发展&#xff0c;尤其像短视频、点播、直播、VR等领域的爆发&#xff0c;人们对于高清、超高清视频体验的追求越来越强烈&#xff0c;流媒体平台如何在提升观众观看体验&#xff0c;同时降低播放成本&#xff0c;利用技术降低带宽消耗的同时又能最大化…

敏捷软件开发(c#版)文摘

第一部分 敏捷开发 第1章 敏捷实践 第2章 极限编程概述 第3章 计划 第4章 测试 第5章 重构 第6章 一次编程实践 第二部分 敏捷设计 第7章 什么是敏捷设计 第8章 SRP 第9章 OCP 第10章 LSP 第11章 DIP 第12章 ISP 第13章 C#程序员UML概观 第三部分 薪水支付案例研究 第四部分 打…

asp.net 2.0 中GridView里设置日期格式

在asp.net 1.0 中的datagrid 中 设置日期字段格式时用 DataFormatString"{0:yyyy-MM-dd}"即可。在gridview 中设置短日期格式 使用<asp:BoundField HeaderText"发表时间" DataField"PostTime" DataFormatString"{0:yyyy-MM-dd}" &g…

springboot初学

首先苦于用ssh、ssm来搭建一个项目&#xff0c;这个基础搭建工作就大概要用半天的功夫才能弄好&#xff0c;想到就头疼&#xff0c;后面听了实验室一位大神的建议&#xff0c;用springboot啊&#xff0c;简单的不止一点点。就顺便学习了下这个神器&#xff0c;果然厉害。 有一次…

Exchange 2013与OWA13集成

好久没发新文章了&#xff0c;因为工作变动的原因&#xff0c;实在抱歉&#xff0c;今天给大家分享先office web app 2013怎么和最新的Exchange 2013进行集成使用吧&#xff0c;这点还是蛮有特色的&#xff0c;因为我们改变以往在OWA中预览Office的效果&#xff0c;我们先看看默…

判断一个string是否可以为数字

方案一&#xff1a;Try...Catch(执行效率不高)/// <summary>/// 名称&#xff1a;IsNumberic/// 功能&#xff1a;判断输入的是否是数字/// 参数&#xff1a;string oText&#xff1a;源文本/// 返回值&#xff1a; bool true:是 false:否/// </summary>/// <…

CSDN湘苗培优|火热报名中

湘苗培优火热报名中CSDN高校俱乐部在这里&#xff0c;你能获得CSDN技术认证与企业导师零距离技术交流参与线下技术沙龙活动求职简历指导参与项目交付并有机会企业内推现在报名即可选择由企业支付学费的订单式培养&#xff0c;或入职后再支付学费等多种付费模式&#xff0c;Z大程…

安装配置Emacs-rails

首先你的机器上肯定要安装emacs啦&#xff0c;此步略过不表。1、从 http://rubyforge.org/projects/emacs-rails 下载最新emacs-rails&#xff0c;解压文件到~/.emacs.d/rails 目录2、根据README&#xff0c;你需要下载三个依赖库&#xff1a;cd ~/.emacs.d/rails wget http://…

实战|手把手教你用Python爬取存储数据,还能自动在Excel中可视化

来源 | 早起Python大家好&#xff0c;在之前我们讲过如何用Python构建一个带有GUI的爬虫小程序&#xff0c;很多本文将迎合热点&#xff0c;延续上次的NBA爬虫GUI&#xff0c;探讨如何爬取虎扑NBA官网数据&#xff0c;并且将数据写入Excel中同时自动生成折线图&#xff0c;主要…

删除SQL数据库中事务日志方法

DUMP TRANSACTION [数据库名] WITH NO_LOG BACKUP LOG [数据库名] WITH NO_LOG DBCC SHRINKDATABASE([数据库名])

新浪微博应用 IE下面框架嵌套框架的问题解决

新浪微博应用 IE下面框架嵌套框架的问题分为两种&#xff1a;1、回调的参数有误&#xff1b;2、session丢失&#xff1b;第一个问题&#xff0c;需要亲们仔细研读接口文档&#xff0c;App.AuthDialog.show({client_id : <?php echo $this->getParam(sub_appkey);?>,…

corosync+pacemaker+crm简单配置

# 系统 centos7.2 安装版本都是Yum源node1: 192.168.8.111 node2:192.168.8.112 vip :192.168.8.200nfs :192.168.8.113 # 互信~] ssh-keygen~]# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys~]# chmod go .ssh/authorized_keys~]# scp -p .ssh/i…

给AI系统做“安全体检”,阿里安全提出自动化AI对抗平台CAA | AAAI 2021

出品 | AI科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;安全人员曾为某车企自动驾驶系统做过一次安全测试&#xff0c;用物理对抗攻击欺骗Autopilot车道检测系统&#xff0c;导致汽车在Autopilot不发出警告的情况下驶入错误车道。假如这是一场真实的攻击&#xf…

linux新建文件权限问题

touch /etc/init.d/httpdchmod 755 /etc/init.d/httpdtouch可以新建一个空文件&#xff0c;可以修改文件的创建时间。比如&#xff1a;编译时看到提示文件的时间为将来的时间&#xff0c;可以使用touch命令来修改。Linux chmod 755和chmod 777 在linux终端先输入ls -al,可以看到…

基于MMSeg算法的中文分词类库

最近在实现基于lucene.net的搜索方案&#xff0c;涉及中文分词&#xff0c;找了很多&#xff0c;最终选择了MMSeg4j&#xff0c;但MMSeg4j只有Java版&#xff0c;在博客园上找到了*王员外*(http://www.cnblogs.com/land/archive/2011/07/19/mmseg4j.html )基于Java版的翻译代码…

关于git bush 中不能复制黏贴的问题

如果你是一个新手的话&#xff0c;在你使用个git的过程中&#xff0c;你会发现git 竟然不能复制黏贴&#xff0c;这简直是完全不能忍受的事&#xff0c;复制黏贴可以大大的节省了我们敲代码的时间&#xff0c;特别是在github中clone别人的仓库到本地&#xff0c;url地址需要一个…

linux系统proc目录进程信息详解

Proc 文件系统是一个实时的&#xff0c;常驻内存的文件系统&#xff0c;它跟踪进程在你机器上的运行情况和你系统的状态。/proc文件系统是常驻虚拟内存并且维持着操作系统的动态数据。大部分的 /proc文件系统信息被实时更新来与当前操作系统的状态一致。/proc文件系统的内容能被…

AI开源评测基准AI-Rank,为开源建立标准

当前&#xff0c;数字经济已经成为经济发展的活力引擎和促进经济结构转型升级的重要动能&#xff0c;深刻改变着人类的生产生活方式。12月11日&#xff0c;2020中关村大数据日暨数字经济融合创新发展论坛在北京举行。本届中关村大数据日以“开源共享 生态赋能”为主题&#xff…

Linux 汇编语言开发指南

Linux 汇编语言开发指南肖文鹏 (xiaowp263.net), 北京理工大学计算机系硕士研究生本文作者 肖文鹏是北京理工大学计算机系的一名硕士研究生&#xff0c;主要从事操作系统和分布式计算环境的研究&#xff0c;喜爱Linux和Python。你可以通过 xiaowp263.net与他取得联系。 简介&am…

拦截器与filter的区别

在接触拦截器和filter以来&#xff0c;觉得这两者有太多相似之处&#xff0c;都是运用aop的思想处理事情&#xff0c;但是这两者到底有什么区别倒一直很模糊&#xff0c;今天看书的时候&#xff0c;终于看到自己满意的解答了&#xff0c;赶紧记录下来&#xff1a;1.使用范围不同…