CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

如何在webForm上画一个图表(内有若干单元格),实现鼠标点击单元格背景颜色改变。

楼主emiao_2001(雾)2004-08-01 10:52:23 在 .NET技术 / C# 提问

如何在webForm上画一个图表(内有若干单元格,单元格的数量是固定的,3列2行共6个单元格),实现鼠标点击哪个单元格,该单元格的背景颜色就改变,并且得到该单元格的在图表内的唯一标识(以便将程序中该单元格对应的变量值改变)。例如:日历控件中的,鼠标点击一个格,其颜色就改变。  
  我想只用C#实现(方便点击单元格改变其对应的变量值),不用JavaScript。  
   
  初步构想,使用DataTable,将每个单元格对应的颜色值放到数组里,单元格的数量是固定的,3列2行共6个单元格,所以,放入两个数组a[3]和b[3]中。增加DataTable的DataRow。如下:  
  DataTable   dt   =   new   DataTable();  
  DataRow   dr;  
  dr   =   dt.NewRow();  
  dr[0]   =   a[0];  
  dr[1]   =   a[1];  
  dr[2]   =   a[2];  
  dr   =   dt.NewRow();  
  dr[0]   =   b[0];  
  dr[1]   =   b[1];  
  dr[2]   =   b[2];  
  dt.Rows.Add(dr);  
   
  再将DataTable绑定给一个DataGrid,如下:  
  DataGrid1.DataSource   =   dt;  
  DataGrid1.DataMember   =   dt.TableName;  
  DataGrid1.DataBind();  
   
  下面,要实现,点击DataGrid中的一个单元格改变其颜色,和改变单元格对应的数组中的值。该怎么做?????(疑问点1,如何点击DataGrid中的一个单元格改变其颜色。疑问点2,如何改变单元格对应的数组中的值,即取得单元格在DataGrid中的位置)  
   
  以上是我的想法,不知是否可行。如果不行,有其他方法也好可以。  
  能有示例最好。 问题点数:100、回复次数:5Top

1 楼btut2004(养鱼炒股)回复于 2004-08-01 11:00:47 得分 20

1\取得选中的单元格,不会  
  2、设置单元格颜色。好像是datagrid1[x][y].style="sldfjlsdf"  
  3\不知道Top

2 楼emiao_2001(雾)回复于 2004-08-01 13:40:26 得分 0

试了试好象不对Top

3 楼caiyajun512(田鼠)回复于 2004-08-01 13:51:19 得分 80

你的目的是实现服务端能对单元格控制。  
  用DataGrid可以修改value,但控制单元格不好。  
  有点复杂:  
  1.页面上用<table>标记构造日历。对每个单元格的id添加属性。  
  2.单元格的数据用xml数据岛绑定。  
  3.写javascript脚本控制value和color的改变。将修改value和color  
  写入xml文件。  
  4.回发xml文件.服务器端解析xml,读取数据。  
  关于回发。a.把xml写入隐藏web控件.b用HTTPRequest对象。  
  5.服务器端修改xml文件,刷新页面.  
  6.如不刷新,可以加入隐藏web控件,接受服务器的数据.再用javascript脚本  
  修改对应的单元格value.  
   
  最好的方法:你写个asp.net服务器控件.把上面的部分内容封装进去.  
   
  Top

4 楼emiao_2001(雾)回复于 2004-08-01 14:20:07 得分 0

我想过用这个方法,但服务器控件没有开发过,时间也来不及。  
  所以想用DataGrid。  
  其实我是想,每一行的所有单元格的颜色(如:白色为0,红色为1)的值连起来组合为一个字符串,可放入数据库里。也可从数据库里取出对应字段的值,分解。然后根据分解的结果显示每个单元的颜色。也可点击某个单元格根据其颜色,改写数据库里取出对应字段的值。  
   
   
   
   
  Top

5 楼emiao_2001(雾)回复于 2004-08-02 13:48:57 得分 0

upTop

相关问题

  • 当我鼠标点MSHFlexGrid控件某单元格时,该单元格变色
  • 如何获取鼠标在DBGrid单元格的内容
  • 请问用鼠标点击DataGrid(Winform)某一个单元格如何得到这个单元格的值?
  • 怎样获得鼠标单击或双击DATAGRID单元格时,返回的单元格的行号和列号?
  • 如何获取DataGridView(2005)中,当前鼠标点击的单元格的鼠标?
  • 请问在Msflexgrid中如何用鼠标右键选定单元格?
  • listview中如何得到当前鼠标所在位置的单元格内容
  • 如何通过鼠标感知 DBGrid 单元格下记录的字段值?
  • 如何判断用户的鼠标在 CListCtrl 的不同的单元格移动?
  • 请问如何取得DBGrid中鼠标点击的单元格的记录值?

关键词

  • datagrid
  • 鼠标
  • 控件
  • 服务器
  • 修改
  • 数据库
  • 数据
  • 文件
  • javascript
  • xml

得分解答快速导航

  • 帖主:emiao_2001
  • btut2004
  • caiyajun512

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo