能者有分!!!

gmajrtfp 2003-07-18 11:17:06
这个贴子的问题,我还没有弄懂:
http://expert.csdn.net/Expert/topic/2009/2009380.xml?temp=.9365503

我设置一个DATAGRID控件,在默认情况下是黑色的字体,白色的背景,鼠标移到上面后,使字体变为红色,背景变为淡黄色,我在选定项里面这样设置后,编译出来,把鼠标移到上面却没有任何变化,请问这是为什么?

DataGrid_ItemDataBound()
这句加到哪里呀?这个是要自己写方法吗?
给个简单的DATAGRID全代码好吗?麻烦用VB.NET写,我只懂VB
谢谢了
下面是我的DATAGRID
<asp:datagrid id="cxyzl" runat="server" Width="100%" BorderWidth="0px" AutoGenerateColumns="False">
<AlternatingItemStyle BackColor="AliceBlue"></AlternatingItemStyle>
<HeaderStyle Font-Bold="True" Wrap="False" BackColor="PapayaWhip"></HeaderStyle>
<Columns>
<asp:TemplateColumn>
<HeaderTemplate>
<FONT face="宋体"></FONT>
</HeaderTemplate>
<ItemTemplate>
<FONT face="宋体">·</FONT>
</ItemTemplate>
<EditItemTemplate>
<FONT face="宋体"></FONT>
</EditItemTemplate>
</asp:TemplateColumn>
<asp:HyperLinkColumn DataNavigateUrlField="bh" DataNavigateUrlFormatString="javascript:show()" DataTextField="ctname"
HeaderText="标题"></asp:HyperLinkColumn>
<asp:BoundColumn DataField="cttime" HeaderText="时间" DataFormatString="{0:d}">
<HeaderStyle Wrap="False" HorizontalAlign="Right"></HeaderStyle>
<ItemStyle Wrap="False" HorizontalAlign="Right"></ItemStyle>
</asp:BoundColumn>
</Columns>
</asp:datagrid>
...全文
18 11 打赏 收藏 举报
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
gmajrtfp1 2003-07-25
  • 打赏
  • 举报
回复
学习
gmajrtfp 2003-07-19
  • 打赏
  • 举报
回复
注册这个方法是什么意思?
gmajrtfp 2003-07-19
  • 打赏
  • 举报
回复
up
gmajrtfp 2003-07-19
  • 打赏
  • 举报
回复
我是用一个方法写在.vb文件里的
greystar 2003-07-19
  • 打赏
  • 举报
回复
<tr onmouseover="this.bgColor='#e8f4ff';" onmouseout=....>

???
就这代码是不能执行的。应该为
<tr onmouserover="this.style.backgroundColor='#b7c4e2'" onmouserout="this.style__________">
那么你在服务器端应该知道如何写了吧
gmajrtfp 2003-07-19
  • 打赏
  • 举报
回复
没有人愿意帮我吗?
gmajrtfp 2003-07-19
  • 打赏
  • 举报
回复
我看了saucer(思归, MS .NET MVP)的回复还没有搞懂
我用
在DataGrid_ItemDataBound()里面加入:
e.Item.Attributes["onMouseOver"] = "javascript:this.bgColor=yellow;";
e.Item.Attributes["onMouseOut"] = "javascript:this.bgColor=black;";
也不行,提示“属性访问必须分配给属性或其它的值”

谁能给一个完完整整的代码?从DATAGRID的设置到方法的代码,谢谢了
panyee 2003-07-19
  • 打赏
  • 举报
回复
注册就是把this.DataGrid_ItemDataBound这个方法告诉页面初始函数,当有某个事件的时候,要进入这个函数执行
gmajrtfp 2003-07-19
  • 打赏
  • 举报
回复
DataGrid_ItemDataBound()
这个方法完成应该怎么写呀
panyee 2003-07-18
  • 打赏
  • 举报
回复
写一个方法
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if (e.Item.ItemIndex >= 0)
{
e.Item.Attributes["onmouseover"] = "this.bgColor='#e8f4ff';";
e.Item.Attributes["onmouseout"] = "this.bgColor='#FFFFFF';";
}
}


注册这个方法

private void InitializeComponent()
{
.......

this.DataGrid_ItemDataBound += new System.EventHandler(this.DataGrid_ItemDataBound);
}


e.Item.Attributes["onmouseover"] = "this.bgColor='#e8f4ff';";
是给DataGrid的一行, 即<tr>指定omouseover事件, this.bgColor=...是事件的过程

到时生成的html页面就是这样
<tr onmouseover="this.bgColor='#e8f4ff';" onmouseout=....>
....
</tr>


saucer 2003-07-18
  • 打赏
  • 举报
回复
see
Highlighting Rows in an ASP.Net DataGrid...
http://www.dotnetjohn.com/articles/articleid12.aspx
相关推荐
发帖
.NET社区

6.1w+

社区成员

.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
帖子事件
创建了帖子
2003-07-18 11:17
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。