2013-03-08 4 views

ответ

1

Вы не можете установить источник данных как одно свойство. Вместо этого вы можете определить столбец в вашем gridview, привязанный к столбцу с первым именем, а затем вы установите для источника данных типа Gr Grid всю коллекцию возвращаемых объектов.

Во-вторых, вы можете просто привязать Datareader к сетке, не нужно вообще делать цикл while.

Update

dgNames.AutogenerateColumns=false; 
dgNames.Columns.Add("firstName","firstName"); 
dgNames.DataSource=dr; 

Если вы хотите знать, как были возвращены многие записи, просто подсчитать количество строк в сетке после связаны ... или загрузить DataTable с DataReader и привязать Dataable к сетке вместо привязки Datareader. DataTables.Rows.Count расскажет вам, сколько записей было возвращено.

+0

Не могли бы вы дать мне фрагмент, пожалуйста, – Tacit

+0

@tacit вы используете Winforms или asp.net? – Icarus

+0

Я использую Winforms – Tacit

0

Это прямо из MSDN (google 'datagridview', и оно находится прямо вверху). Прогуляйтесь вниз, и есть пример кода, который демонстрирует, как делать то, что вы просите. http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.aspx

Как говорит Икар - вы можете просто привязать данные, не исследуя их по очереди, как вы пытаетесь сделать. Но если вы хотите идти строка за строкой, вы можете

... 
dgNames.Rows.Add(dr["firstName"]); 
... 

Также - вам не нужно прирастить DataReader, который находится в цикле в то время как вы используете.

+0

Я не увеличиваю число datareader im, просто подсчитывая, сколько записей возвращается, плюс строка выше выдает исключение – Tacit

+0

аргумент может быть строковым массивом - найдите свойство 'rows' по ссылке выше, и это Говорит конкретно об этом - во всяком случае, я не могу на самом деле сделать ваш код для вас (без дополнительной информации от вас), поэтому лучше всего я могу дать вам ссылку на ответ. Просмотрите статью MSDN - это как бы «руководство» и имеет рабочий пример. Кроме того, вы можете вызывать rowcount на свой datagridveiw после того, как он привязан, если вы хотите, чтобы строка была до вас, но в любом случае, fwiw. – Chains

+0

Спасибо, я смотрю на ссылку, могу ли я это понять. Большое спасибо за вашу помощь. – Tacit

Смежные вопросы