您的位置:首页 > 编程语言 > C#

如何在C#中利用DataGridView控件编辑数据

2009-12-16 17:10 716 查看
添加,删除,修改基本上都是datagridview自动完成的,保存数据要自己弄一下,看你的数据与是怎么样的

public partial class TeamManagement : UserControl

{

public TeamManagement()

{

InitializeComponent();

}

private void TeamManagement_Load(object sender, EventArgs e)

{

RefreshGrid();

}

private void RefreshGrid()

{

teamTableAdapter.Fill(roadFeeDataSet.Team);

dataGridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;

dataGridView.AutoResizeColumns();

}

private void dataGridView_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)

{

rowUpdated = true;

if (dataGridView.Columns[e.ColumnIndex].Name == "teamNameDataGridViewTextBoxColumn")

{

foreach (DataGridViewRow row in dataGridView.Rows)

{

if (e.RowIndex != row.Index && !row.IsNewRow &&

dataGridView.Rows[e.RowIndex].Cells[e.ColumnIndex].Value != null &&

row.Cells[e.ColumnIndex].Value != null &&

e.FormattedValue.ToString().Trim()

== row.Cells[e.ColumnIndex].Value.ToString().Trim()

)

{

MessageBox.Show("名称已存在,请使用不同的名称!", "输入错误",

MessageBoxButtons.OK, MessageBoxIcon.Error);

e.Cancel = true;

}

}

}

}

private void dataGridView_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)

{

if ((int)userTableAdapter.SelectCountByTeamID((int?)e.Row.Cells["teamIDDataGridViewTextBoxColumn"].Value) > 0)

{

MessageBox.Show("此记录已在使用,您不能删除!", "提示", MessageBoxButtons.OK,

MessageBoxIcon.Information);

e.Cancel = true;

return;

}

if (MessageBox.Show("您真的要删除此条记录吗?", "提示", MessageBoxButtons.YesNo,

MessageBoxIcon.Question) == DialogResult.No)

{

e.Cancel = true;

}

}

private bool rowAdded = false;

private bool rowUpdated = false;

private void dataGridView_UserAddedRow(object sender, DataGridViewRowEventArgs e)

{

rowAdded = true;

}

private void dataGridView_RowValidated(object sender, DataGridViewCellEventArgs e)

{

if (rowAdded || rowUpdated)

{

rowAdded = false;

rowUpdated = false;

teamTableAdapter.Update(roadFeeDataSet);

RefreshGrid();

}

}

private void dataGridView_UserDeletedRow(object sender, DataGridViewRowEventArgs e)

{

teamTableAdapter.Update(roadFeeDataSet);

RefreshGrid();

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐