نوشته شده توسط
پرستو پارسایی
سلام
1 -نحوه بدست آوردن کوچکترین تاریخ شمسی و بزرگترین تاریخ شمسی لود شده در دیتا گرید رو میخوام بدونم . فرمت ( 1398/06/22)
With DataGridView1.Rows
If .Count > 0 Then
Dim minDate As String = .Item(0).Cells.Item("Date").Value
Dim maxDate As String = minDate
For i = 1 To .Count - 1
Dim d As String = .Item(i).Cells.Item("Date").Value
If d Is Nothing OrElse d.Length <> 10 Then Continue For
If minDate > d Then minDate = d
If maxDate < d Then maxDate = d
Next
TextBox1.Text = minDate
TextBox2.Text = maxDate
End If
End With
نوشته شده توسط
پرستو پارسایی
2 -چه جوری میتونم تاریخ های که تو دیتا گرید فیلتر کردم رو یکجا حذف کنم. مثلا تعداد زیادی رکورد دارم و وقتی فیلتر میکنم 15 رکود نمایش داده میشه . این 15 رکورد رو چه جوری یکجا از دیتابسیم (SQL) حذف کنم
ممنون میشم در صورت اطلاع پاسخ دهید
اگر بخواهید یک رکورد رو بر اساس سطر در DataGridView حذف کنید بهتره که کلید اون رکورد رو هم در ستون ها داشته باشید. حتی میتونه اون ستون مخفی از دید کاربر باشه ولی به هر حال برای حذف کردن دقیق به Id یا کلید رکورد نیاز هست.
DataGridView1.Columns.Item("Id").Visible = False
With DataGridView1
If .Rows.Count > 0 Then
Using connection As New SqlConnection(connectionString)
connection.Open()
Using command As New SqlCommand("DELETE FROM [YourTable] WHERE [Id] IN (", connection)
Dim pList As New List(Of String)
For i = 0 To .Rows.Count - 1
If .Rows.Item(i).Cells.Item("Id").Value Is Nothing Then Continue For
pList.Add("@p" + i.ToString())
command.Parameters.AddWithValue("@p" + i.ToString(), .Rows.Item(i).Cells.Item("Id").Value)
Next
command.CommandText += String.Join(",", pList.ToArray()) + ");"
command.ExecuteNonQuery()
End Using
End Using
End If
.DataSource = Nothing
.Rows.Clear()
End With