2013-04-19 2 views
0

В форме выигрыша я использовал редактор для привязки вида сетки данных к базе данных MS Access. Источник данных создал следующие объекты: Binding Source, Table Adapter, Table Adapter Manager и Binding Navigator. Моя цель - просто прочитать информацию, разрешить некоторое редактирование и передать информацию в другое приложение; Таким образом, мне не нужно вставлять/обновлять/удалять из исходной БД. Кроме того, я добавил пару не связанных столбцов в представление. Таким образом, существует несколько «связанных» столбцов и несколько несвязанных столбцов. Когда я запускаю приложение, данные есть. Однако я не могу редактировать ни одну из ячеек (связанную или несвязанную). Свойству только для чтения с табличным представлением установлено значение false. Свойство «Только чтение» имеет значение false. Я проверил каждое поле на адаптере таблицы, и они не настроены только на чтение. Я не уверен, что еще проверить. Я ценю вашу помощь заранее.Невозможно отредактировать ячейку в виде сетки данных

Дополнительные детали:

В конструкторе сгенерированный код, столбцы создаются для чтения. Однако в реальных конструкторских свойствах я не вижу нигде, что касается этих полей. Я подумываю о том, чтобы вручную изменить их на false (я действительно это сделал, и это разрешило проблему) и вернулось. Есть ли проблема, когда я делаю это вручную?

// 
     // dataGridViewTextBoxColumn2 
     // 
     this.dataGridViewTextBoxColumn2.DataPropertyName = "FirstName"; 
     this.dataGridViewTextBoxColumn2.HeaderText = "FirstName"; 
     this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2"; 
     this.dataGridViewTextBoxColumn2.ReadOnly = true; 
     // 
     // dataGridViewTextBoxColumn1 
     // 
     this.dataGridViewTextBoxColumn1.DataPropertyName = "LastName"; 
     this.dataGridViewTextBoxColumn1.HeaderText = "LastName"; 
     this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1"; 
     this.dataGridViewTextBoxColumn1.ReadOnly = true; 
     // 
     // dataGridViewTextBoxColumn3 
     // 
     this.dataGridViewTextBoxColumn3.DataPropertyName = "Address"; 
     this.dataGridViewTextBoxColumn3.HeaderText = "Address"; 
     this.dataGridViewTextBoxColumn3.Name = "dataGridViewTextBoxColumn3"; 
     this.dataGridViewTextBoxColumn3.ReadOnly = true; 
     // 
     // dataGridViewTextBoxColumn4 
     // 
     this.dataGridViewTextBoxColumn4.DataPropertyName = "City"; 
     this.dataGridViewTextBoxColumn4.HeaderText = "City"; 
     this.dataGridViewTextBoxColumn4.Name = "dataGridViewTextBoxColumn4"; 
     this.dataGridViewTextBoxColumn4.ReadOnly = true; 

ответ

0

Вам необходимо включить редактирование в вашем GridView, установив EditCellOnEnter свойство истинного

Проверьте это (смотрите для редактирования ячейки): http://msdn.microsoft.com/en-us/library/ms993231.aspx

+0

Эта ссылка предназначена для элемента управления GridView ASP.NET, она не соответствует элементу управления WinForm GridView и его свойствам. Я посмотрел на ссылку, но это не помогло отслеживать мою проблему. Однако спасибо за вашу помощь. Если у вас есть другие предложения, я все уши. – atlasgp

+0

Мне очень жаль. Я не заметил, что это сетка с выигрышами. Я исправил свой ответ. – Flavia

0

Когда я изменить свойство Columns моей DataGridView, я могу см.: [1] флажок «Только для чтения» в диалоговом окне «Добавить столбцы» (между флажками «Видимый» и «Замерзший» рядом с кнопками «ОК» и «Отмена») и [2] свойство «Только для чтения» для каждого добавленного столбца (в области «Поведение», если вы 'с использованием категоризированного представления).