asp.net中dataGridView控件里显示表的信息,我想实现点击其中一个字段,则该字段对应的整行都显示被选中颜色,这个用代码怎么实现。
在asp.net中dataGridView控件里显示一个表的信息,我想实现点击其中一个字段,则该字段对应的整行都显示被选中颜色,这个用代码怎么实现。谢谢!
补充:谢谢Moonlight 好快啊
要是winform的呢?好象不能用JS来写
补充:谢谢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