У меня есть три текстовых поля: tbEditStartDate, tbEditStopDate и tbEditRenewalDate. У меня есть Gridview под названием gvApp, который содержит список кандидатов с указанием даты начала, даты окончания и даты продления. Я создал команду строки, которую я использую, чтобы получить дату начала, дату окончания и дату обновления и отобразить ее в tbEditStartDate, tbStopDate и tbRenewalDate. Моя проблема в том, что всякий раз, когда я включаю Textmode = "Date" в текстовые поля, даты не будут отображаться. Если я удаляю TextMode = "Date", отображаются даты. Я пытаюсь сохранить TextMode = "Date", потому что DatePicker облегчает пользователям выбор даты визуально. Кроме того, я попытался изменить типы данных трех значений в SQL, но все же не повезло. Вот что у меня есть:
<div class="row view-basic-card" style="margin-bottom:10px">
<div class="col-12 col-md-6 col-lg-3">
Start Date:
<asp:TextBox ID="tbEditStartDate" class="form-control" TextMode="Date" runat="server" Style="margin-right: 15px; width: 185px"></asp:TextBox>
</div>
<div class="col-12 col-md-6 col-lg-3">
Stop Date:
<asp:TextBox ID="tbEditStopDate" class="form-control" textmode="date" runat="server" Style="margin-right: 15px; width: 185px"></asp:TextBox>
</div>
<div class="col-12 col-md-6 col-lg-3">
Renewal Date:
<asp:TextBox ID="tbEditRenewalDate" class="form-control" runat="server" Style="margin-right: 15px; width: 185px"></asp:TextBox>
</div>
<div class="col-12 col-md-6 col-lg-3">
Contract Type:
<asp:TextBox ID="tbEditContractType" class="form-control" runat="server" Style="margin-right: 15px; width: 185px"></asp:TextBox>
</div>
</div>
Тогда вот моя команда строки:
Protected Sub gvApp_RowCommand(sender As Object, e As GridViewCommandEventArgs)
Dim myDateTime As Date = Date.Parse(DateString)
Dim myDate As Date = myDateTime.Date()
'----------------------------------------------------------------------------
Dim strSelectedPersonID As String
Dim strSelectedFirstname As String
Dim strSelectedLastname As String
Dim strSelectedMiddlename As String
Dim strSelectPosition As String
Dim strEditDepartment As String
Dim strEditBirthdate As String = myDate
Dim strEditGender As String
Dim strEditCitizenship As String
Dim strEditSSN As String
Dim strEditPassport As String
Dim strEditVisa As String
Dim strEditPhone As String
Dim strEditEmail As String
Dim strEditAddress As String
Dim strOfferLetterStatus As String
Dim strOfferStatusDate As String
Dim strEditStartDate As String = myDate
Dim strEditStopDate As String = myDate
Dim strEditRenewalDate As String = myDate
Dim strEditContractType As String
Dim strEditAvailDate As String = myDate
Dim strEditArrivalDate As String = myDate
If e.CommandName = "Select" Then
idx = Convert.ToInt32(e.CommandArgument)
Dim row As GridViewRow = gvApp.Rows(idx)
xSelectedPersonID = row.Cells(0).Text
Using conn As New SqlConnection(ConfigurationManager.ConnectionStrings("HRRecruitmentDBConn").ToString())
conn.Open()
Dim dsApplicant As New DataSet()
Dim dr As SqlDataReader
Dim strSelectCmd As String = "SELECT * FROM tblApplicant WHERE AppID = @AppID "
Dim cmd As New SqlCommand(strSelectCmd, conn)
cmd.Parameters.AddWithValue("@AppID", xSelectedPersonID)
cmd.Connection = conn
dr = cmd.ExecuteReader()
If dr.HasRows Then
While (dr.Read())
strEditStartDate = dr(1).ToString
strEditStopDate = dr(2).ToString
strEditRenewalDate = dr(3).ToString
strEditContractType = dr(4).ToString
strEditDepartment = dr(7).ToString
strSelectPosition = dr(6).ToString
strSelectedFirstname = dr(8).ToString
strSelectedLastname = dr(9).ToString
strSelectedMiddlename = dr(10).ToString
strEditGender = dr(11).ToString
strEditBirthdate = dr(12).ToString
strEditEmail = dr(13).ToString
strEditPhone = dr(14).ToString
strEditAddress = dr(15).ToString
strEditSSN = dr(16).ToString
strEditPassport = dr(17).ToString
strEditCitizenship = dr(18).ToString
strEditVisa = dr(19).ToString
strOfferLetterStatus = dr(20).ToString
strOfferStatusDate = dr(21).ToString
strEditAvailDate = dr(23).ToString
strEditArrivalDate = dr(24).ToString
End While
End If
tbEditStartDate.Text = strEditStartDate
tbEditStopDate.Text = strEditStopDate
tbEditRenewalDate.Text = strEditRenewalDate
tbEditContractType.Text = strEditContractType
cmbAppEditPosition.Value = strSelectPosition
cmbEditDepartment.Value = strEditDepartment
tbEditFirstname.Text = strSelectedFirstname
tbEditLastname.Text = strSelectedLastname
tbEditMiddlename.Text = strSelectedMiddlename
cmbEditGender.Value = strEditGender
tbEditBirthdate.Text = strEditBirthdate
tbEditEmail.Text = strEditEmail
tbEditPhone.Text = strEditPhone
tbEditAddress.Text = strEditAddress
tbEditSSN.Text = strEditSSN
tbEditPassport.Text = strEditPassport
tbEditCitizenship.Text = strEditCitizenship
tbEditVisa.Text = strEditVisa
cmbOfferStatus.Value = strOfferLetterStatus
tbOfferStatusDate.Text = strOfferStatusDate
tbEditAvailDate.Text = strEditAvailDate
tbEditArrivalDate.Text = strEditArrivalDate
conn.Close()
End Using
End If
BindGridView()
End Sub