عرض العناصر في مربع القائمة المنسدلة
-
12-12-2019 - |
سؤال
أحاول أن أعرض في مربع القائمة المنسدلة قائمة 'الزيارات المجدولة' استنادا إلى الإدخالات السابقة.أنا قادر على جمع المعلومات ولكن عندما أعرضها ، يتحول مربع القائمة المنسدلة إلى مربع إدخال ويتم عرض غير معلوماتي التي أريدها.الشكل الذي أود أن يتم عرض العناصر الخاصة بي هو من قبل :10/2/2012-في المدرسة.
هنا هو ما لدي لرمز بلدي:
هذا هو المكان الذي أجمع فيه معلومات الزيارة-التاريخ والمكان
public JsonResult GetVisitDetails(Guid visitEntryId)
{
var model = new VisitDetailModel();
VisitEntry visitEntry = _visitEntryService.Get(visitEntryId);
if(visitEntry == null)
{
model.Message = string.Format(Message.NotFoundMessage, Resources.Entities.Visit.EntityName);
return Json(model);
}
model.VisitEntryId = visitEntryId;
model.VisitTypeId = visitEntry.VisitTypeId;
if (visitEntry.VisitType != null)
model.VisitType = visitEntry.VisitDate.ToShortDateString();
return Json(model);
}
#region Nested Type:VisitDetailModel
public class VisitDetailModel
{
public Guid VisitEntryId { get; set; }
public short VisitTypeId { get; set; }
public string VisitType { get; set; }
public string VisitDate { get; set; }
public string Message { get; set; }
}
#endregion
هذا هو ما لدي في بلدي أدتوفيوموديل:
var visits = _visitEntryService.FindAllForCase(viewModel.CaseId, _currentUser.OfficeId).Where(v=>v.VisitDate <= DateTime.Today.SetToMaximumTime()).OrderByDescending(v=>v.VisitDate).ToList();
visits.Insert(0, new VisitEntry());
viewModel.Visits = visits.ToSelectList("VisitEntryId", "Display", viewModel.VisitEntryId.ToString());
if(viewModel.VisitTypes.Count() == 0)
ModelState.AddModelError("",string.Format("No active {0} entered.", Kids.Resources.Entities.VisitType.EntityNamePlural));
بلدي .أسكس الصفحة لإظهار المنسدلة:
<div class="row">
<%:Html.EditorFor(m=>m.VisitEntryId) %>
<%:Html.LabelFor(m=>m.Visits) %>
<%:Html.ValidationMessageFor(m=>m.VisitEntryId) %>
بلدي فيوموديل:
[LocalizedDisplayName("VisitEntry", NameResourceType = typeof(VisitActivity))]
public short? VisitEntryId { get; set; }
[UIHint("DropDownList")]
[DropDownList(DropDownListTargetProperty = "VisitEntryId")]
public IEnumerable<SelectListItem> Visits { get; set; }
أي معلومات عن سبب عدم تمكني من عرض قائمة منسدلة ستكون مفيدة.
المحلول
في أسكس الخاص بك كنت تفعل المحررلعلى model.VisitEntryId
وهو int
كنت في حاجة الى Html.DropDownFor
للحصول على قائمة منسدلة.
الخاص بك model.Visits
هو سيليكتليست وأنا التخمين يجب عليك القيام به:
<%:Html.LabelFor(m=>m.VisitEntryId) %>
<%:Html.EditorFor(m=>m.Visits) %>
<%:Html.ValidationMessageFor(m=>m.VisitEntryId) %>