PDA

View Full Version : بهینه سازی کد در ویرایش رکوردها با دیتا گرید



sh2007
چهارشنبه 28 دی 1390, 19:21 عصر
دوستان سلام
من با کدهای زیر اطلاعات در دیتاگرید رو ویرایش می کنم اما مشکل من فقط توی این زمینه است که با تاریخ مشکل دارم یعنی کارکتر / حالا دوستان این کدها رو ببینید اگه بهتر از این هم می تونید انجام بدید دریغ نفرمائید تا هم اینجانب و بقیه دوستان استفاده کنن
ممنونم

Friend WithEvents txt_Dgv As New DataGridViewTextBoxEditingControl
خطوط بعدی که مهم هستند


Private Sub DGVRiz_CellValidating(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellValidatingEve ntArgs) Handles DGVriz.CellValidating
If DGVriz.CurrentCell.ColumnIndex = 3 Then
If String.IsNullOrEmpty(e.FormattedValue.ToString()) Then
DGVriz.Rows(e.RowIndex).ErrorText = _
"تاریخ را وارد كنيد"
e.Cancel = True
Exit Sub
End If
End If

If DGVriz.CurrentCell.ColumnIndex = 4 Then
If String.IsNullOrEmpty(e.FormattedValue.ToString()) Then
DGVriz.Rows(e.RowIndex).ErrorText = _
"شرح را وارد كنيد"
e.Cancel = True
Exit Sub
End If
End If
If DGVriz.CurrentCell.ColumnIndex = 5 Then
If String.IsNullOrEmpty(e.FormattedValue.ToString()) Then
DGVriz.Rows(e.RowIndex).ErrorText = _
"مبلغ را وارد كنيد"
e.Cancel = True
Exit Sub
End If
End If
End Sub
این قسمت رو ببینید که کارکتر عددی بودن و غیره را کنترل می کند خصوصا ستون 3 رو که تاریخه باید چیکار کنم

Private Sub txt_Dgv_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txt_Dgv.KeyPress

Select DGVriz.CurrentCell.ColumnIndex
Case 3
If Char.IsNumber(e.KeyChar) = False Then
e.Handled = True
End If
If e.KeyChar = (vbBack) Then
e.Handled = False
End If
If e.KeyChar = (vbTab) Then
e.Handled = False
End If

Case 5
If Char.IsNumber(e.KeyChar) = False Then
e.Handled = True
End If
If e.KeyChar = (vbBack) Then
e.Handled = False
End If
If e.KeyChar = (vbTab) Then
e.Handled = False
End If
End Select

End Sub

sh2007
پنج شنبه 29 دی 1390, 20:31 عصر
دوستان عدم استقبال یعنی اینکه شما اطلاعات ر و توی دیتاگرید اصلاح نمی کنید و از روشی دیگه دارید استفاده می کنید
اگه اینجوریه لطفا توضیح بدید
ممنون