答案 0 :(得分:1)
从DataGridView
派生一个类并覆盖ShowFocusCues
属性。
True
以显示焦点矩形。False
以隐藏焦点矩形。base.ShowFocusCues
以维护默认行为。您还可以公开公共属性以动态更改它。
public class DataGridViewFocused : DataGridView
{
public bool? ShowFocus { get; set; }
protected override bool ShowFocusCues
{
get
{
return this.ShowFocus.HasValue? this.ShowFocus.Value : base.ShowFocusCues;
}
}
}
将其添加到项目中以替换现有的DataGridView
,只需导航到Form.Designer.cs
文件并替换以下内容即可:
public System.Windows.Forms.DataGridView dataGridView1;
this.dataGridView1 = new System.Windows.Forms.DataGridView();
使用:
public DataGridViewFocused dataGridView1;
this.dataGridView1 = new DataGridViewFocused();
通过添加以下行,您可以随时隐藏焦点矩形:
this.dataGridView1.ShowFocus = false;
或者,例如,如果您想在多选事件期间隐藏仅那个矩形,您可以执行以下操作:
private void DataGridView1_SelectionChanged(object sender, EventArgs e)
{
if (this.dataGridView1.SelectedCells.Count > 1)
{
this.dataGridView1.ShowFocus = false;
}
else
{
this.dataGridView1.ShowFocus = null;
}
}
答案 1 :(得分:0)