我现在用DataGrid显示从数据库中提取的数据,然后做了添加、修改、删除三个按钮。点击添加按钮用.ShowDialog()属性弹出一个新窗口,然后输入数据insert到数据库,点击确定完成数据添加并关闭添加窗口,但现在遇到怎样刷新DataGrid的问题, 请指教. 我试过 在主窗体写了公共方法bind_datagrid()
但是出现了很奇怪的问题, 求其它解决方法
但是出现了很奇怪的问题, 求其它解决方法
{
//Bind data
Bind_comStatus();
Bind_data();
}
private void Bind_data()
{
_TaskDetailID=frmManage.TaskListID;
if(_TaskDetailID==0)
{
txtContext.Text=string.Empty;
txtExperience.Text=string.Empty;
txtTaskTitle.Text=string.Empty;
}
else
{
DataRow dr=tasklist.rowTaskList(_TaskDetailID);
txtContext.Text=dr["Content"].ToString();
txtExperience.Text=dr["ExperienceSumup"].ToString();
txtTaskTitle.Text=dr["TaskTitle"].ToString();
if(dr["AlarmTime"].ToString().Substring(0,8)=="1900-1-1")
{
timeAlarm.Checked=false;
}
else
{
timeAlarm.Value=Convert.ToDateTime(dr["AlarmTime"]);
}
if(dr["FinishTime"].ToString().Substring(0,8)=="1900-1-1")
{
timeFinish.Checked=false;
}
else
{ timeFinish.Value=Convert.ToDateTime(dr["FinishTime"]);
}
comStatus.SelectedValue=dr["StatusID"].ToString();
}
} private void btnSave_Click(object sender, System.EventArgs e)
{
Model.TaskListInfo newtasklist=new Model.TaskListInfo();
newtasklist.AddTime=System.DateTime.Now;
if(timeAlarm.Checked==false)
{
newtasklist.AlarmTime=Convert.ToDateTime("1900-01-01") ;
}
else
{
newtasklist.AlarmTime=timeFinish.Value;
} newtasklist.Content=txtContext.Text.Trim();
newtasklist.ExperienceSumup=txtExperience.Text.Trim();
if(timeFinish.Checked==false)
{
newtasklist.FinishTime=Convert.ToDateTime("1900-01-01") ;
}
else
{
newtasklist.FinishTime=timeFinish.Value;
}
//newtasklist.ImportanceLevel=1
newtasklist.StatusID=Convert.ToInt16( clsTools.StringToNumber( comStatus.SelectedValue.ToString())) ;
newtasklist.TaskID=frmManage.TaskListID ;
newtasklist.TaskTitle=txtTaskTitle.Text.Trim();
tasklist.insertTaskList(newtasklist);
frmManage.Bind_DataGrid();
this.Close();
}