Я только начал писать клиентское приложение на C #, в большинстве случаев используя режим разработки Visual Studio.Имейте в виду, что я только начал изучать C # вчера - поэтому, если я делаю какие-то глупые ошибки, тогда, пожалуйста, скажите.
Что у меня есть
- Aбаза данных;
- DataSet, который связывается с таблицами Customer и Agent;
- BindingSource, который связывается с DataSet;
- CustomerBindingSource, который связывается с таблицей Customer BindingSource;
- AgentBindingSource, который связывается с таблицей Agent BindingSource;
- DataGridView, который связывается с CustomerBindingSource, столбцом AgentID которого является комбинированный список, который связывается с AgentBindingSource.
Пока все работает нормально.Однако у меня есть пара проблем, одна из которых заключается в следующем коде ...
Код
void grdCustomers_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
{
DataGridViewRow gvr = grdCustomers.Rows[e.RowIndex];
String currID = gvr.Cells[0].Value.ToString();
if (currID.Equals(""))
{
gvr.Cells[0].Value = "{id}";
}
}
void button1_Click(object sender, EventArgs e) //Save button for when the user has finished editing.
{
foreach (DataGridViewRow gvr in grdCustomers.Rows)
{
String currID = gvr.Cells[0].Value.ToString();
if (currID.Equals("{id}"))
{
String g = Guid.NewGuid().ToString();
gvr.Cells[0].Value = g;
}
}
customerTableAdapter.Update(customerAppDS21.Customer);
}
Проблемы
4-я строка вызывает проблемы при попытке запустить программу.Это говорит о том, что ссылка на объект не установлена на экземпляр объекта.Я думаю, что это вызвано gvr.Cells[0]
, но я не знаю почему.На мой взгляд, было бы разумно, если бы это вызывалось, когда настройка строки завершена (включая добавление всех ячеек).
Я не могу заставить DataGridView связать данные сбаза данных.Я хочу, чтобы пользователь мог редактировать любое из значений, но при добавлении строки идентификатор не рассчитывается до тех пор, пока он не нажмет кнопку Сохранить (button1
).
Iбыл бы очень признателен, если бы кто-то мог помочь мне с любой из этих проблем.
С уважением,
Ричард