private void DeleteDevData()
??{
???int deleteNum=0;
???//删除选中的某一行或多行记录,调用DataGrid的IsSelected(i)函数,如果函数返回结果为true,则表示该行被选中
???ArrayList arrList = new ArrayList();
???for(int i=0;i
???if (deleteNum !=0) ???{ ????if (MessageBox.Show ("你确定要删除这些数据吗?", "删除数据", ?????MessageBoxButtons.YesNo, MessageBoxIcon.Question)== DialogResult.Yes) ????{ ?????F_WR_Public.F_WR_Public f_WR_Public = new F_WR_Public.F_WR_Public();????? ?????F_WR_Public.VO_DevSpec[] arrVO_DevSpec_Delete = new F_WR_Public.VO_DevSpec[deleteNum];
?????IEnumerator ienum = arrList.GetEnumerator(); ?????int deleteIndex=0; ?????while(ienum.MoveNext()) ?????{ ??????arrVO_DevSpec_Delete[deleteIndex] = (F_WR_Public.VO_DevSpec)ienum.Current; ??????arrVO_DevSpec_Delete[deleteIndex].col=Int64.MaxValue; ??????arrVO_DevSpec_Delete[deleteIndex].devTypeID=Int64.MaxValue; ??????arrVO_DevSpec_Delete[deleteIndex].num=Int64.MaxValue; ??????arrVO_DevSpec_Delete[deleteIndex].row=Int64.MaxValue; ??????deleteIndex++; ?????}
?????f_WR_Public.removeDevSpec(arrVO_DevSpec_Delete); ?????MessageBox.Show ("删除成功!", "删除数据",MessageBoxButtons.OK, MessageBoxIcon.Information); ????} ????else ????{ ?????return; ????} ???} ???else ???{ ????MessageBox.Show ("未选中所要删除的数据!", "删除数据", MessageBoxButtons.OK, MessageBoxIcon.Warning); ???}
??}
?
private void QueryDevSpec() ??{ ???try ???{ ????DevSpec.Clear(); ????F_WR_Public.F_WR_Public f_WR_Public = new F_WR_Public.F_WR_Public();
????F_WR_Public.VO_DevSpec vo_DevSpec = new F_WR_Public.VO_DevSpec(); ????vo_DevSpec.col=Int64.MaxValue; ????vo_DevSpec.devSpecID=Int64.MaxValue; ????vo_DevSpec.devTypeID=Int64.Parse(cbo_DevType.SelectedValue.ToString()); ????vo_DevSpec.num=Int64.MaxValue; ????vo_DevSpec.row=Int64.MaxValue;
????F_WR_Public.VO_DevSpec[] arrVO_DevSpec=f_WR_Public.queryDevSpec(vo_DevSpec);
????if(arrVO_DevSpec!=null)
????{
?????for(int i=0;i
??????DevSpec.Rows.Add(myRow); ?????} ?????DevSpec.AcceptChanges(); ?????//设置dtg_BasicDataInfo的DataMember为DevSpec ?????dtg_BasicDataInfo.DataMember = DevSpec.ToString(); ?????dtg_BasicDataInfo.DataSource=dataSet1; ?????DevTableStyle.MappingName="DevSpec"; ?????rowCounts=arrVO_DevSpec.Length; ????} ????else ????{ ?????rowCounts=0; ????} ????dtg_BasicDataInfo.ReadOnly = true; ???} ???catch(Exception ee) ???{ ???? ????MessageBox.Show (ee.ToString(), "Error", ?????MessageBoxButtons.OK, MessageBoxIcon.Information); ???} ??}
?
?private void SaveDevData() ??? { ???try ???{ ????F_WR_Public.F_WR_Public f_WR_Public = new F_WR_Public.F_WR_Public();
????//如果某行的状态为Added,则表示该行的数据是新增加的
????DataRow[] dataRowAdd = DevSpec.Select(null,null,DataViewRowState.Added);
????int mCount= dataRowAdd.Length;
????if (mCount != 0)
????{
?????F_WR_Public.VO_DevSpec[] arrVO_DevSpec_Add = new F_WR_Public.VO_DevSpec[mCount];
?????for(int i=0;i
??????vo_DevSpec.col=Int64.MaxValue; ??????vo_DevSpec.num=Int64.MaxValue; ??????vo_DevSpec.row=Int64.MaxValue;
??????vo_DevSpec.devTypeID =Int64.Parse(cbo_DevType.SelectedValue.ToString()); ??????vo_DevSpec.specType=dataRowAdd[i][1].ToString(); ??????vo_DevSpec.manufacturer=dataRowAdd[i][2].ToString(); ??????vo_DevSpec.@long=dataRowAdd[i][3].ToString(); ??????vo_DevSpec.width=dataRowAdd[i][4].ToString(); ??????vo_DevSpec.high=dataRowAdd[i][5].ToString(); ??????if(!dataRowAdd[i][6].ToString().Equals("")) ??????{ ???????vo_DevSpec.num= Int64.Parse(dataRowAdd[i][6].ToString()); ??????} ??????if(!dataRowAdd[i][7].ToString().Equals("")) ??????{ ???????vo_DevSpec.row= Int64.Parse(dataRowAdd[i][7].ToString()); ??????} ??????if(!dataRowAdd[i][8].ToString().Equals("")) ??????{ ???????vo_DevSpec.col= Int64.Parse(dataRowAdd[i][8].ToString()); ??????} ??????vo_DevSpec.disposeType=dataRowAdd[i][9].ToString(); ??????vo_DevSpec.devSpecID=Int64.MaxValue; ???????? ???????? ??????arrVO_DevSpec_Add[i] = vo_DevSpec; ?????} ?????f_WR_Public.addDevSpec(arrVO_DevSpec_Add); ?????MessageBox.Show ("增加成功!", "增加数据",MessageBoxButtons.OK, MessageBoxIcon.Information); ????}
????//如果某行的状态为ModifiedCurrent,则表示该行的数据被修改过
????DataRow[] dataRowModify = DevSpec.Select(null,null,DataViewRowState.ModifiedCurrent);
????int intDataRowModify = dataRowModify.Length;
????if (intDataRowModify != 0)
????{
?????F_WR_Public.VO_DevSpec[] arrVO_DevSpec_Modify = new F_WR_Public.VO_DevSpec[intDataRowModify];
?????for(int i=0;i
??????vo_DevSpec.specType=dataRowModify[i][1].ToString(); ??????vo_DevSpec.manufacturer=dataRowModify[i][2].ToString(); ??????vo_DevSpec.@long=dataRowModify[i][3].ToString(); ??????vo_DevSpec.width=dataRowModify[i][4].ToString(); ??????vo_DevSpec.high=dataRowModify[i][5].ToString(); ??????if(!dataRowModify[i][6].ToString().Equals("")) ??????{ ???????vo_DevSpec.num= Int64.Parse(dataRowModify[i][6].ToString()); ??????} ??????if(!dataRowModify[i][7].ToString().Equals("")) ??????{ ???????vo_DevSpec.row= Int64.Parse(dataRowModify[i][7].ToString()); ??????} ??????if(!dataRowModify[i][8].ToString().Equals("")) ??????{ ???????vo_DevSpec.col= Int64.Parse(dataRowModify[i][8].ToString()); ??????} ??????vo_DevSpec.disposeType=dataRowModify[i][9].ToString();
??????arrVO_DevSpec_Modify[i] = vo_DevSpec; ?????} ??????? ?????f_WR_Public.modifyDevSpec(arrVO_DevSpec_Modify); ?????MessageBox.Show ("保存成功!", "保存数据",MessageBoxButtons.OK, MessageBoxIcon.Information); ????} ????DevSpec.AcceptChanges(); ???} ???catch(Exception ee) ???{ ????MessageBox.Show (ee.ToString(), "Error",MessageBoxButtons.OK, MessageBoxIcon.Information); ???} ??? }
?
?
private void QueryIfSaveDevData() ??{ ???/*该函数查询Dev表中是否有未保存的数据,如果有,则询问是否保存, ??? * 如果用户回答需要保存,则调用SaveDevData过程保存数据,如果回答否, ??? * 则调用查询过程QueryDevSpec刷新页面*/ ???DataRow[] dataRowAdd1 = DevSpec.Select(null,null,DataViewRowState.Added); ???int mAddCount1= dataRowAdd1.Length; ???DataRow[] dataRowModify1 = DevSpec.Select(null,null,DataViewRowState.ModifiedCurrent); ???int mModifyCount1=dataRowModify1.Length; ???if (mAddCount1!=0 || mModifyCount1 !=0) ???{ ????if (MessageBox.Show ("有编辑过的数据未保存,需要保存吗?", "提示", ?????MessageBoxButtons.YesNo, MessageBoxIcon.Question)== DialogResult.Yes) ?????SaveDevData(); ????else ?????QueryDevSpec(); ???} ??}