Это было легко (ish) в WebForms и не проблема в WPF, но у меня возникают проблемы с заполнением DropDown в MVC, затем выберите значение из базы данных.Заполните MVC @ Html.DropDownList и выберите значение из DB
поля DB возвращается к контроллеру, передается модальным и вошел в поле зрения, как этот
@code
Dim vProspects As CustomerService.QuestionnaireModals = CType(ViewData("QuestionnaireModals"), CustomerService.QuestionnaireModals)
Dim vName As String = vProspects.Prospect_Name
Dim vAddress As String = vProspects.Prospect_Address
Dim vTown As String = vProspects.Prospect_Town
Dim vState As String = vProspects.Prospect_State
Dim vZip As String = vProspects.Prospect_Zip
Dim vTelephone As String = vProspects.Prospect_Telephone
Dim vCompany As String = vName & " <br/> "
vCompany += vAddress & " <br/> "
vCompany += vTown & ", " & vState & " " & vZip & "<br/>"
vCompany += "Telephone: " & vTelephone
@Html.Raw(vCompany)
End Code
и значения вставлены в поле - в качестве примера состояния поля
@Html.TextBox("inputCompanyState", vState, New With {.id = "inputCompanyState", .class = "form-control", .style = "max-width:80px;"})
Теперь, если я хочу, чтобы заменить государство поле с каплей вниз и заполнить с DataTable как
Public Function ReturnStateList() As DataTable
Try
Dim DT As New DataTable
With DT.Columns
.Add("AB", GetType(String))
.Add("Name", GetType(String))
End With
With DT.Rows
.Add("0", "Select State")
.Add("AL", "Alabama (AL)")
.Add("AK", "Alaska (AK)")
.Add("AZ", "Arizona (AZ)")
.Add("AR", "Arkansas (AR)")
.Add("CA", "California (CA)")
.Add("CO", "Colorado (CO)")
.Add("CT", "Connecticut (CT)")
.Add("DE", "Delaware (DE)")
.Add("DC", "District of Columbia (DC)")
.Add("FL", "Florida (FL)")
.Add("GA", "Georgia (GA)")
.Add("HI", "Hawaii (HI)")
.Add("ID", "Idaho (ID)")
.Add("IL", "Illinois (IL)")
.Add("IN", "Indiana (IN)")
.Add("IA", "Iowa (IA)")
.Add("KS", "Kansas (KS)")
.Add("KY", "Kentucky (KY)")
.Add("LA", "Louisiana (LA)")
.Add("ME", "Maine (ME)")
.Add("MD", "Maryland (MD)")
.Add("MA", "Massachusetts (MA)")
.Add("MI", "Michigan (MI)")
.Add("MN", "Minnesota (MN)")
.Add("MS", "Mississippi (MS)")
.Add("MO", "Missouri (MO)")
.Add("MT", "Montana (MT)")
.Add("NE", "Nebraska (NE)")
.Add("NV", "Nevada (NV)")
.Add("NH", "New Hampshire (NH)")
.Add("NJ", "New Jersey (NJ)")
.Add("NM", "New Mexico (NM)")
.Add("NY", "New York (NY)")
.Add("NC", "North Carolina (NC)")
.Add("ND", "North Dakota (ND)")
.Add("OH", "Ohio (OH)")
.Add("OK", "Oklahoma (OK)")
.Add("OR", "Oregon (OR)")
.Add("PA", "Pennsylvania (PA)")
.Add("RI", "Rhode Island (RI)")
.Add("SC", "South Carolina (SC)")
.Add("SD", "South Dakota (SD)")
.Add("TN", "Tennessee (TN)")
.Add("TX", "Texas (TX)")
.Add("UT", "Utah (UT)")
.Add("VT", "Vermont (VT)")
.Add("VA", "Virginia (VA)")
.Add("WA", "Washington (WA)")
.Add("WV", "West Virginia (WV)")
.Add("WI", "Wisconsin (WI)")
.Add("WY", "Wyoming (WY)")
End With
Return DT
Catch ex As Exception
' EmailError(ex)
Return Nothing
End Try
End Function
, а затем выберите значение «vState» Я теряюсь ...
Любые предложения? Спасибо
Спасибо Shyju за то, что нашли время, чтобы добавить этот код - он поставил меня на правильный путь.
@Html.DropDownList("AB", vProspects.States, New With {.class = "form-control"})
вылечил его для меня. Сколько часов пытался выяснить, почему он не работал, пока я не заметил, что после заполнения его из DataTable я не смог вернуть список :-(
Вызов 'Html.DropDownList' вместо' Html.TextBox'. Вам необходимо соответствующим образом упаковать список значений, но подпись для этого метода сообщит вам, что вам нужно. – jmcilhinney
Благодарим вас за ответ - проблема, с которой я столкнулась, заключается в том, как получить значения данных в представлении. В WebForms я просто сделал это как Code Behind и заполнил список. Не могли бы вы сделать небольшой пример? Тип данных создается из модуля, который содержит многократно используемые функции. – gchq