[英]Multiselect property of Datagridview now selecting full row
我有一個具有datagridview的窗口形式。 在此datagridview中,我動態地添加了兩列,如下面的代碼所示。我的問題是,當我單擊這些添加的列時,Multiselect屬性未選擇完整行,但是當我單擊網格的第一列時它選擇了完整行。
if (gvlayoutload.Columns.Count == 0)
{
DataGridViewTextBoxColumn comboBoxColumnRInfo =
new DataGridViewTextBoxColumn();
comboBoxColumnRInfo.Name = "RowInfo";
comboBoxColumnRInfo.HeaderText = "";
comboBoxColumnRInfo.DataPropertyName = "RowInfo";
comboBoxColumnRInfo.ReadOnly = true;
comboBoxColumnRInfo.Width = 25;
comboBoxColumnRInfo.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
//comboBoxColumnRInfo.Frozen = true;
this.gvlayoutload.Columns.Add(comboBoxColumnRInfo);
DataGridViewTextBoxColumn comboBoxColumn =
new DataGridViewTextBoxColumn();
comboBoxColumn.HeaderText = "Row #";
comboBoxColumn.DataPropertyName = "RowNo";
comboBoxColumn.AutoSizeMode = DataGridViewAutoSizeColumnMode.NotSet;
comboBoxColumn.Width = 45;
comboBoxColumn.FillWeight = 45;
//comboBoxColumn.Frozen = true;
FRColumn col = new FRColumn();
col.Name = comboBoxColumn.HeaderText;
col.Type = 1;
col.Variable1 = variable1;
col.Variable2 = variable2;
col.Percent = Percent;
col.Rowno = Rowno;
col.Headersize = 8;
col.Bodysize = 8;
col.HeaderAlign = 0;
col.BodyAlign = 0;
lstcolumn.Add(col);
this.gvlayoutload.Columns.Add(comboBoxColumn);
當我單擊RowInfo列或Row#列的Multiselect屬性未選擇完整行時。我已將multiselect屬性設置為true,並且多選模式為fullrowmode。
DataGridView.SelectionMode屬性指示如何選擇DataGridView的單元格。 默認值為RowHeaderSelect
。 此MSDN鏈接中描述了每種模式的行為。
DataGridView
中的第一列包含行標題。 如果選擇此列中的任何單元格,則當SelectionMode
為RowHeaderSelect
或FullRowSelect
時,它將選擇整行。
如果要選擇多行,則設置DataGridView.MultiSelect = true
。
您還可以通過設置DataGridView.RowHeadersVisible = false
來隱藏該列。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.