datagrid怎么选中多行并获取这些行的行号?

zhangfeng7398 2004-07-27 09:58:37
datagrid怎么选中多行并获取这些行的行号?
...全文
360 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangfeng7398 2004-07-29
  • 打赏
  • 举报
回复
分不够我再加
zhangfeng7398 2004-07-29
  • 打赏
  • 举报
回复
windows窗体的dataGrid控件,想实现多选,选中的记录高亮显示,并且我能知道这些记录的行号。
mpmpmp3332003 2004-07-29
  • 打赏
  • 举报
回复
看的好奇怪,是windows控件,还是web服务器控件,好像什么都有
zhangfeng7398 2004-07-29
  • 打赏
  • 举报
回复
阿鑫,你的代码好象有问题。
另外我想实现的是这样的效果:选中的记录高亮显示,并且我能知道这些记录的行号。
yuxiaodong790909 2004-07-29
  • 打赏
  • 举报
回复
如果要高亮显示则可以设置Color属性了。
yuxiaodong790909 2004-07-29
  • 打赏
  • 举报
回复
DataGrid的默认就是可以选择多行呀。
在DataGrid的MouseUp事件中写下如下的代码就可以显示你所选择的行号了:
if (e.Button == MouseButtons.Left)
{
DataGrid.HitTestInfo hti = this.dataGrid1.HitTest(new Point(e.X, e.Y));
if(hti.Type == DataGrid.HitTestType.RowHeader)
{
if(Control.ModifierKeys == Keys.Shift)
{

for(int i = 0;i<this.dataGrid1.VisibleRowCount -1;i++)
{
if (this.dataGrid1.IsSelected(i))
MessageBox.Show(i.ToString());
}
}
}
}
zhangfeng7398 2004-07-28
  • 打赏
  • 举报
回复
要达到windows风格的效果,就是按住ctrl键然后单击为多选,可以实现吗?
zhangfeng7398 2004-07-28
  • 打赏
  • 举报
回复
楼上,我想能达到windows风格的效果,就是按住ctrl键然后单击为多选,可以实现吗?
zilang 2004-07-28
  • 打赏
  • 举报
回复
<ItemTemplate>
<input type="checkbox" id="chk" name="chk"
value='<%# Container.DataItem("FREINVKEY") %>' >
</ItemTemplate>
然后用javascript去取,
var aa =document.all.chk
如果只有一条就可以直接取value,如果多条就aa[i].value
Ahxing1985 2004-07-28
  • 打赏
  • 举报
回复
public int[] getSelect()
{
ArrayList temp=new ArrayList();
for(int i=0;i<this.ListManager.Count;i++)
if(this.IsSelected(i))
temp.Add(i);
int rows=new int[temp.Count];
for(int i=0;i<temp.Count;i++)
rows[i]=temp[i].ToString();
return rows;
}
xiaha3 2004-07-27
  • 打赏
  • 举报
回复
可以加入一个有check的摸版列,然后
for(int i=DataGrid1.Items.Count-1;i>-1;i--)
{
CheckBox CheckBox_sel = (CheckBox) DataGrid1.Items[i].FindControl("CheckBox_");

if(CheckBox_sel.Checked)
{
...
}
}
zhangfeng7398 2004-07-27
  • 打赏
  • 举报
回复
怎么一次选中多行啊?有高手吗?
zhangfeng7398 2004-07-27
  • 打赏
  • 举报
回复
是选中多行。不是单行
skydaxia 2004-07-27
  • 打赏
  • 举报
回复
单行
this.dataGrid1.CurrentCell.RowNumber ;
选中行
this.dataGrid1.Select(ndex);

110,566

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧