使用DataGridView,如何在网格视图本身启用“允许编辑”时使特定列不可编辑?
另外,当DataGridView中的ComboBox中的选定索引发生更改时,如何执行事件?这里,ComboBox是一种列类型.
解决方法
你在这里有几个问题.
(1) How can I make a specific column uneditable in DataGridView?
在要进行不可编辑的特定列上设置ReadOnly
标志.
dataGridView.Columns["YourColumnName"].ReadOnly = true;
(2) How can I execute an event when the selected index on a ComboBox in the DataGridView changes?
如果它在你的DataGridView中,它不是一个ComboBox;它是一个DataGridViewComboBoxColumn.根据MSDN:
Unlike the ComboBox control,the DataGridViewComboBoxCell does not have SelectedIndex and SelectedValue properties. Instead,selecting a value from a drop-down list sets the cell Value property.
这个我不熟悉,因为我自己从未尝试过.您似乎想要订阅EditingControlShowing
事件,然后查看something like this是否适合您(稍微调整一下).
(3) How can I make the header title align in the center?
dataGridView.Columns["YourColumnName"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;