バインドされたデータグリッドビュー、4 つのテキスト ボックス、およびボタンを備えた winform があります。ボタンをクリックすると「fillby」ステートメントが呼び出され、データが datagridview にロードされ、テキスト ボックスの内容が datagridview の新しい行のいくつかのフィールドのデフォルト値になります。
すべてのテキスト ボックスをチェックして空でないことを確認する必要があります。いずれかが空の場合は、どのテキスト ボックスが空であるかを示すメッセージがポップアップ表示され、datagridview がいっぱいにならないようにする必要があります。
これは私がこれまでに持っているコードです:
Private Sub btnCargarInformacion_Click(sender As System.Object, e As System.EventArgs) Handles btnCargar.Click
Dim emptyTextBoxes =
From txt In Me.Controls.OfType(Of TextBox)()
Where txt.Text.Length = 0
Select txt.Name
If emptyTextBoxes.Count >= -1 Then
MessageBox.Show(String.Format("Please fill following textboxes: {0}", String.Join(",", emptyTextBoxes)))
Else
Dim PartePersonalTableApt As New PersonalObraDataSetTableAdapters.PartePersonalTableAdapter
Dim PersonalObTableApt As New PersonalObraDataSetTableAdapters.PersonalObTableAdapter
PartePersonalTableApt.ClearBeforeFill = True
PartePersonalTableApt.FillByFecha(PersonalObraDataSet.PartePersonal, txtDate.Text, txtDepartamento.Text, txtTurno.Text)
PersonalObTableApt.ClearBeforeFill = True
PersonalObTableApt.Fillby(PersonalObraDataSet.PersonalOb)
End If
End Sub
エラーは発生しません。すべてのテキストボックスが入力されていてもメッセージが表示され、メッセージボックスはテキストボックスを空として指定せず、データグリッドビューの入力を停止します。
私はコーディングに非常に慣れていないので、あなたの解決策をより詳細に説明してください。ありがとう