当前位置:编程学习 > C#/ASP.NET >>

asp.net中dataGridView控件里显示表的信息,我想实现点击其中一个字段,则该字段对应的整行都显示被选中颜色,这个用代码怎么实现。

在asp.net中dataGridView控件里显示一个表的信息,
我想实现点击其中一个字段,则该字段对应的整行都显示被选中颜色,这个用代码怎么实现。谢谢!
补充:谢谢Moonlight 好快啊
要是winform的呢?好象不能用JS来写
答案:
///   <summary> 
/// 初始化DataGridView默认属性
/// </summary>
/// <param name= "dgv "> DataGridView对象 </param>
public static void InitDataGridView(DataGridView dgv)
{
//只读属性设置
dgv.ReadOnly = true;

//尾行自动追加
dgv.AllowUserToAddRows = false;

dgv.AllowUserToDeleteRows = false;
//行幅自动变化
dgv.AllowUserToResizeRows = true;
//高度设定
dgv.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing;

//标头设定
dgv.RowHeadersVisible = true;

//标题行高
dgv.ColumnHeadersHeight = 25;

dgv.RowTemplate.Height = 23;

//行选择设定
dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;

//多行选择
dgv.MultiSelect = false;
//选择状态解除
dgv.ClearSelection();

//head文字居中
dgv.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

//选择状态的行的颜色
dgv.DefaultCellStyle.SelectionBackColor = Color.LightSteelBlue;
dgv.DefaultCellStyle.SelectionForeColor = Color.Black;

//设定交替行颜色
dgv.AlternatingRowsDefaultCellStyle.BackColor = Color.White;
dgv.RowsDefaultCellStyle.BackColor = Color.LightGray;

//行副填充时自动调整宽度
dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;

dgv.AutoGenerateColumns = false;

//可否手动调整行大小
dgv.AllowUserToResizeRows = false;

dgv.AutoGenerateColumns = false;
}
后台protected void AllRooms_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.Attributes.Add("onclick", "ItemOver(this)");
}
}
前台
<script language="javascript" type="text/javascript">
if(!objbeforeitem)
{
var objbeforeitem = null;
var objbeforeitembackgroundcolor = null;
}
//单击GridView的某一行时所引发的事件
function ItemOver(obj)
{
if(objbeforeitem)
{
objbeforeitem.style.backgroundcolor = objbeforeitembackgroundcolor;
}
objbeforeitembackgroundcolor = obj.style.backgroundcolor;
objbeforeitem = obj;
obj.style.backgroundcolor = "#B9D1F3";
}
</script>
控件的效果,自然是使用事件驱动模式实现的,所以,你要找到它的事件。
DATAGRIDVIEW的事件不是很多,你可以找找,名字我不记得了,呵呵。
我晕.一句代码都不用写.
一个属性就行了.我忘记是哪个我看下,是row什么来着.
WinForm的设置这个就行了onselectcolor 

上一个:asp.net问题
下一个:asp.net

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,