[ WinForm ]
-----------
DataGrid 中点击指定行标题或用 Select(n) 方法可以设置指定行的选中状态,并且可以多选,那么如何获取已选行的集合呢?或者对于某行,怎么知道其是否为已选状态?对每个热心参与回复者致谢!!
-----------
DataGrid 中点击指定行标题或用 Select(n) 方法可以设置指定行的选中状态,并且可以多选,那么如何获取已选行的集合呢?或者对于某行,怎么知道其是否为已选状态?对每个热心参与回复者致谢!!
已选状态,可以用 this.dataGrid1.IsSelected(?);
当然不是,数据源来自从数据库中填充的DataSet...
int i = this.mygrid.BindingContext[this.mygrid.DataSource, this.mygride.DataMember].Count;
for(int j=0;j<i;j++)
{
if(this.mygrid.IsSelected(j))
{
//在这里把选中的行加到你的集合里
//下面是去m行n例的数据
myData = this.mygrid[m,n];
}
}
private void btnShowSelectedRow_Click(object sender, System.EventArgs e)
{
CurrencyManager currencyManager = (CurrencyManager)this.BindingContext[this.dataGrid1.DataSource,this.dataGrid1.DataMember];
StringBuilder sb = new StringBuilder();
for(int i = 0;i < dataGrid1.VisibleRowCount;i++)
{
if(this.dataGrid1.IsSelected(i))
{
DataRowView drv = (DataRowView)currencyManager.List[i];
DataRow dr = drv.Row;
sb.AppendFormat("{0} {1} {2}\n",dr[0],dr[1],dr[2]);
}
}
//打印选择数据
MessageBox.Show(sb.ToString());
}