@using Entities.DTO @using Entities.Contracts @using Newtonsoft.Json @using TechHelper.Client.Exam @using TechHelper.Client.Pages.Exam.QuestionCard @* @AssignmentQuestion.Id *@ 包裹器属性 @AssignmentStructType.Root @AssignmentStructType.Struct @AssignmentStructType.Group @AssignmentStructType.Question @AssignmentStructType.SubQuestion @AssignmentStructType.Option @foreach (var item in QuestionTypes) { var qt = item; @* Style = "@($"background - color:{ item.Value.Color} ")"*@ @item.Value.DisplayName } @if (AssignmentQuestion.Question != null) { } @code { [Parameter] public AssignmentQuestionDto AssignmentQuestion { get; set; } = new AssignmentQuestionDto(); public QuestionDto TempQuesdto; Dictionary QuestionTypes = new Dictionary(); [Inject] private ILocalStorageService LocalStorageService { get; set; } protected override void OnInitialized() { base.OnInitialized(); if (AssignmentQuestion.Question != null) { TempQuesdto = AssignmentQuestion.Question; } var cs = LocalStorageService.GetItem("GlobalInfo"); var GlobalInfo = JsonConvert.DeserializeObject>(cs); if(GlobalInfo != null) { QuestionTypes = GlobalInfo; } } private void HandleQTSelectedValueChanged(string type) { AssignmentQuestion.QType = type; if (AssignmentQuestion.ChildrenAssignmentQuestion.Count > 0 && AssignmentQuestion.StructType == AssignmentStructType.Group) { foreach (var item in AssignmentQuestion.ChildrenAssignmentQuestion) { item.QType = type; if (item.Question != null) { item.Question.QType = type; } } } StateHasChanged(); } private void HandleSelectedValueChanged(AssignmentStructType type) { AssignmentQuestion.StructType = type; if (type != AssignmentStructType.Question && AssignmentQuestion.Question != null) { AssignmentQuestion.Title = AssignmentQuestion.Question.Title; AssignmentQuestion.Question = null; } if (type == AssignmentStructType.Question && AssignmentQuestion.Question == null) { if (TempQuesdto != null) { AssignmentQuestion.Question = TempQuesdto; if (AssignmentQuestion.Title == AssignmentQuestion.Question.Title) { AssignmentQuestion.Title = ""; } } else AssignmentQuestion.Question = new QuestionDto { }; } StateHasChanged(); } }