To微软专家,MVP,用过DataTable_RowFocusChanging()判断数据有效性的帮我看看,谢谢!

好运 2003-08-18 07:01:55
BindDataGrid()
{
---
OrderDetail.RowChanging+=new System.Data.DataRowChangeEventHandler(RowCheck);
---
}

private void RowCheck(object sender,DataRowChangeEventArgs e)
{
try
{
DataTable dt=(DataTable)sender;
DataRow SourceRow=e.Row;

string FashionID=SourceRow.ItemArray.GetValue(0).ToString();
string Qty=SourceRow.ItemArray.GetValue(6).ToString();
if(Sytech.Sungod.PlanSystem.PlanSystemLib.Util.CheckValidate.CheckFashion(frmPortal.m_DataManage,FashionID)==false)
{
throw new Exception("产品编号无效!");
}
try
{
int OrderQty=int.Parse(Qty);
}
catch(System.FormatException)
{
throw new Exception("订单数量无效!");
}
}
catch(Exception ex)
{
MessageBox.Show(ex.Message,"错误",MessageBoxButtons.OK,MessageBoxIcon.Error);
}
}用这种方法检验数据的有效性,Winform的DataGrid出现了超怪的现象,DataGrid控件变成了一个白块,中间是红色的对角线,有兴趣的测试一下。
...全文
53 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
好运 2003-08-19
  • 打赏
  • 举报
回复
up
好运 2003-08-19
  • 打赏
  • 举报
回复
Winform的DataGrid,我怎样在行改变之前,验证该行的数据有效性?多列,每列都要验证
雪狼1234567 2003-08-18
  • 打赏
  • 举报
回复
对,在好多情况下都会出现,一般是数据显示错误,或者其它错误都会出现你所说的矩形框,
。当DataGird无法解析的时候就会那样,验证数据最好要不用你的那种方法,
好运 2003-08-18
  • 打赏
  • 举报
回复
to snof(雪狼) ,如果你感兴趣,可以做一个小测试,对DataGrid整行数据做判断的时候,用我上面的方法(方法可能不对),你会看到DataGrid变成了一个矩形框,Backcolor=white,内容是一个对角线,红色的,不妨先做一个测试,谢谢你的回复
雪狼1234567 2003-08-18
  • 打赏
  • 举报
回复
有效性验证看看下面:
http://www.syncfusion.com/FAQ/WinForms/FAQ_c44c.asp#q974q

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧