我有TabControl
,其中包含DataGridView
和ToolStripButton
。
DataGridView
已启用多个选择。 toolStripButton的功能是从DataGridView
中删除行。
DataGridView有一个BindingSource:
partial class MyView
{
...
this.myBindingSource = new System.Windows.Forms.BindingSource(this.components);
...
this.dataGridView.DataSource = this.myBindingSource;
this.dataGridView.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
this.dataGridView.MultiSelect = true;
....
this.tsbDelete.Click += new System.EventHandler(this.tsbDelete_Click);
...
我有一个删除按钮的事件处理程序,如下所示:
public partial class MyView : System.Windows.Forms.UserControl, IMyView
{
...
private void tsbDelete_Click (object sender, System.EventArgs e)
{
var current = myBindingSource.Current;
...
}
当前是单一选择。如果已选择多行,则它是最后选择的行。我无法弄清楚如何选择所有行。困难在于DataGridView
在事件处理程序中不可用(或者我不知道如何访问它,这就是问题)。如果可以,我可以访问DataGridView.SelectedRows。 发件人是按钮,它不直接连接到DataGridView
我该怎么做?
完全指定:
System.Windows.Forms.TabControl
System.Windows.Forms.DataGridView
System.Windows.Forms.BindingSource
System.Windows.Forms.ToolStripButton
答案 0 :(得分:1)
您可能无法访问DGV,因为您的处理程序是公共的而您的构造函数类不是?我总是能够毫无问题地从处理程序中访问元素。