diff --git a/src/BootstrapBlazor.Shared/Locales/en.json b/src/BootstrapBlazor.Shared/Locales/en.json index 32c248be4d7f5668359c6d2f40e1940c3f1e7364..de9ced53f50f0d1efba3e42597a9dfeeb7ab0f74 100644 --- a/src/BootstrapBlazor.Shared/Locales/en.json +++ b/src/BootstrapBlazor.Shared/Locales/en.json @@ -438,7 +438,7 @@ "ExceptionTestIntroduce": "In this example code, an error code that divides by zero is written. Because try/catch is used to capture the exception, the error message is displayed in the console below", "ButtonText": "test", "Block2Title": "OnErrorHandleAsync", - "Block2Intro": "Set custom exception handling logic by setting OnErrorHandleAsync callback method", + "Block2Intro": "Set custom exception handling logic by setting OnErrorHandleAsync callback method", "Tips": "Both the Layout component and the Tab component have built-in ErrorLogger components. Please do not add them in the above two components. The following is the simplified example code" }, "BootstrapBlazor.Shared.Samples.Splits": { @@ -520,7 +520,7 @@ "Block1Intro": "A wide range of basic usages are applicable.", "Block2Title": "Bottom bar", "Block2Intro": "Set the parameter IsBottom value is true menu bar at the bottom of the container, for the mover", - "Tips2": "Because the bottom bar menu is relatively positioned relative to the parent container, you need to set the parent node style position-, or customize the style theposition-fixed", + "Tips2": "Because the bottom bar menu is relatively positioned relative to the parent container, you need to set the parent node style position-, or customize the style theposition-fixed", "Block3Title": "Top bar menu with icon", "Block3Intro": "For simple website apps, set the menu icon by setting the menu item the Icon property of the MenuItem", "Block4Title": "Sidebar", @@ -539,14 +539,14 @@ "Block8Intro": "Set the custom component into the menu by setting the Component property of the MenuItem ", "Block9Title": "Custom node shrinkage", "Block9Intro": "Set whether the node is receding by setting the IsCollapsed property of the MenuItem", - "P2": "In this example, the permission settings node is expanded and the remaining nodes are in the recess state", + "P2": "In this example, the permission settingsnode is expanded and the remaining nodes are in the recess state", "Block10Title": "Dynamically change the menu", "Block10Intro": "Change the menu item by dynamically setting Theitems property values", "Block10Button1": "Update the menu", "Block10Button2": "Reset the menu", "Block11Title": "Some menus disable functionality", "Block11Intro": "Set whether the node is disabled by setting the IsDisabled property of theMenuItem", - "P3": "In this example navigation two node is disabled and the menu and its submenu are not clickable", + "P3": "In this example navigation two node is disabled and the menu and its submenu are not clickable", "b1": "Example of a disablement of the sidebar", "Desc1": "A collection of menu component data", "Desc2": "Whether it is a sidebar", @@ -709,7 +709,7 @@ "Block4Intro": "Set the tab icon by setting the Icon property of the TabItem component", "Block5Title": "Close", "Block5Intro": "Show the close button to the tab by setting the ShowClose property", - "Tips2": "

Tab component turns on the showClose , TabItem property Closable can be set individually to close tab, defaulting to true;In this example User Tabs do not provide a to turn off functionality

", + "Tips2": "

Tab component turns on the showClose , TabItem property Closable can be set individually to close tab, defaulting to true;In this example UserTabs do not provide a to turn off functionality

", "Block6Title": "Position", "Block6Intro": "By setting the Placement property to change the label position, a small arrow scrolls up and down to TabItem switch when you change to left or right", "DividerText": "Split Line", @@ -727,7 +727,7 @@ "Block9Div": "Header", "Block10Title": "Live Tab components", "Block10Intro": "By setting the ShowExtendButtons property to true, turning on the left and right buttons of the component and closing the drop-down menu, it is very useful in practice", - "Tips3": "Dynamically adjust the number of TabItem by adding , delete buttons to view the left and right effects beyond the number of containers, user management is set to not close, and the feature button cannot close this tab", + "Tips3": "Dynamically adjust the number of TabItem by adding, deletebuttons to view the left and right effects beyond the number of containers, user management is set to not close, and the feature button cannot close this tab", "Block11Title": "Only the current label is rendered", "Block11Intro": "By setting the isOnlyRenderActiveTab parameter, the component renders only the current active label", "Att1": "Whether it is a bordered card style", @@ -861,8 +861,8 @@ "Block8Title": "Secondary encapsulation button", "Block8Intro": "The button display text is set by setting the Text property of the winButton component, and the click button is the text on the right that shows the clicked button", "Block9Title": "Asynchronous request button", - "Block9Intro": "By setting whether the isAsync property button is asynchronous request button by setting whether the is false by default", - "P3": "When the button is an asynchronous request button, the button is changed to disabled, and the loading small icon is displayed, returning to normal after the asynchronous request ends, in this case, after clicking the asynchronous request button, the request load animation is displayed and returns to normal after 5 seconds", + "Block9Intro": "By setting whether the isAsync property button is asynchronous request button by setting whether the is false by default", + "P3": "When the button is an asynchronous request button, the button is changed to disabled, and the loading small icon is displayed, returning to normal after the asynchronous request ends, in this case, after clicking the asynchronous button, the request load animation is displayed and returns to normal after 5 seconds", "Button22Text": "Asynchronous", "EventDesc1": "This event is triggered when the button is clicked", "EventDesc2": "This event is triggered when the button is clicked and the current component is not refreshed for performance improvement", @@ -1016,7 +1016,7 @@ "P1": "Set the value of the viewModel property to The DateTime of DatePickerViewModel.DateTime", "Block8Title": "Allow empty time", "Block8Intro": "More for conditional selection", - "P2": "The empty button automatically appears when the binding value is DateTime? for an empty type", + "P2": "The emptybutton automatically appears when the binding value is DateTime? for an empty type", "Block9Title": "The label is displayed", "Block9Intro": "When you are a form component, the label in front of the component is displayed", "P3": "Set the DisplayText property value to select time", @@ -1027,7 +1027,7 @@ "Block11Title": "Sidebar with shortcuts", "Block11Intro": "When you set the ShowSidebar property value to true, the component displays the shortcut sidebar", "Block12Title": "Set the range of values", - "Block12Intro": "Set the MinValue property value to the MaxValue limit the range of optional values, in this case setting the range to 45 days", + "Block12Intro": "Set the MinValue property value to the MaxValue limit the range of optional values, in this case setting the range to 45days", "Att1": "Whether to display the front label", "Att2": "Whether to display the shortcut sidebar", "Att3": "The front label displays text", @@ -1098,12 +1098,12 @@ "Li4": "The buttons in the form can be set up multiplely, just set the buttons Buttons template", "Block1Title": "Basic usage", "Block1Intro": "By binding TModel data model, editable forms for individual fields of the model are automatically generated", - "P2": "Directly bind the model model, setting the Education complete field not to appear", + "P2": "Directly bind the model model, setting the Educationcompletefield not to appear", "GroupBox1": "An example of a form", "ButtonText": "Submit", "Block2Title": "Turn on data validation", "Block2Intro": "Data compliance checks are implemented through nested ValidateForm components", - "P3": "The component is built into the ValidateForm to turn on data compliance checks, and hobby fields use the EditTemplate template to customize the component to render the data", + "P3": "The component is built into the ValidateForm to turn on data compliance checks, and hobbyfields use the EditTemplate template to customize the component to render the data", "P4": "Make the birthday field read-only by setting the Readonly property", "GroupBox2": "An example of a form", "Block3Title": "It is not automatically generated by default", @@ -1328,7 +1328,7 @@ "Block1Intro": "Multi-select drop-down boxes in a variety of colors are available", "Block2Title": "A two-way binding value string", "Block2Intro": "Bind a comma string-splitting string", - "Div1": "
The mutltiSelect component data source Items and selected values the SelectItemsValue support bidirectional binding;In this example, the SelectItemsValue variable by binding bidirectionally, and chooses to change its value through the drop-down box.
", + "Div1": "
The mutltiSelect component data source Items and selected values the SelectItemsValue support bidirectional binding;In this example, the SelectItemsValue variable by binding bidirectionally, and chooses to change its value through the drop-down box.
", "ButtonText1": "Add", "ButtonText2": "Decrease", "ButtonText3": "Clear", @@ -1340,7 +1340,7 @@ "P2": "In this example, an array variable SelectedIntArrayValues selected by a bidirectional binding, selects to change its value through a drop-down box", "Block5Title": "Bidirectional binding enumerates the collection", "Block5Intro": "Bind a generic a collection of IEnumerable", - "P3": "In this example, by binding SelectEnumValues collection variables in both directions, you choose to change their values through the drop-down box, and you do not need to set the Items parameter when enumerating type, the added feature is that the component tries to find resource files or DisplayAttribute And DescriptionAttribute labels attempt local translation, such as this example when switching to Chinese enumerates the values elementary school middle school ", + "P3": "In this example, by binding SelectEnumValues collection variables in both directions, you choose to change their values through the drop-down box, and you do not need to set the Items parameter when enumeratingtype, the added feature is that the component tries to find resource files or DisplayAttribute And DescriptionAttribute labels attempt local translation, such as this example when switching to Chinese enumerates the values elementary schoolmiddle school ", "Block6Title": "Search function", "Block6Intro": "Turn on search by setting the ShowSearch value", "P4": "In this example, the search callback delegate method is set onSearchTextChanged to customize search results if the display text is used internally to make a fuzzy match when not set", @@ -1374,7 +1374,7 @@ "ButtonText": "Test", "Block15Title": "Cascading bindings", "Block15Intro": "The second drop-down box dynamically populates the content by selecting the different options for the first drop-down box.", - "P10": "In this example, clicking on the first drop-down box allows you to get the data source for the second multi-box by asynchronous means, and after assigning, call StateHasChanged to re-render the multi-box ", + "P10": "In this example, clicking on the first drop-down box allows you to get the data source for the second multi-box by asynchronous means, and after assigning, call StateHasChanged to re-render the multi-box ", "Att1": "Whether to display the front label", "Att2": "是否显示前置标签关闭按钮", "Att3": "Whether to display the function button", @@ -1408,7 +1408,7 @@ "Block5Intro": "Make the components vertically arranged internally by setting the IsVertical", "Block6Title": "The binding enumeration type", "Block6Intro": "You do not need to set up Items Value by binding both directions", - "P1": "By setting the IsAutoAddNullItem automatically adds the empty value option, and by setting the NullItemText the custom null option", + "P1": "By setting the IsAutoAddNullItem automatically adds the empty valueoption, and by setting the NullItemText the custom nulloption", "RadioText2": "null", "Block7Title": "Color", "Block7Intro": "Change the component background color by setting the Color property", @@ -1447,12 +1447,12 @@ "H1": "When there are too many options, use the drop-down menu to present and select content", "Block1Title": "Select drop-down selection box", "Block1Intro": "Drop-down selection boxes are available in a variety of colors", - "P1": "In this example, the first drop-down box does not have a Value bidirectional binding, so you only change when you select different options, and the remaining drop-down boxes share the same data sourceItems and bind Value values in both directions, changing together when you select different options", + "P1": "In this example, the first drop-down box does not have a Value bidirectional binding, so you only change when you select different options, and the remaining drop-down boxes share the same data sourceItems and bind Value values in both directions, changing together when you select different options", "Block2Title": "Select disables the drop-down box", "Block2Intro": "Selector unavailable state", - "P2": "The options in the drop-down box disable the example", + "P2": "The options in the drop-down box disable theexample", "Block3Title": "Select two-way binding", - "Block3Intro": "The values in the text box change as you change the drop-down option by binding the Model.Name property to the component with Select .", + "Block3Intro": "The values in the text box change as you change the drop-down option by binding the Model.Name property to the component with Select .", "Block4Title": "Select cascading binding", "Block4Intro": "The second drop-down box dynamically populates the content by selecting the different options for the first drop-down box.", "ButtonText1": "In Dialog", @@ -1469,28 +1469,28 @@ "Block7Intro": "The component binding value is an example of a Guid structure", "Block8Title": "The label is displayed", "Block8Intro": "When a component binds in both directions, it automatically determines whether label text is displayed based on the conditions", - "P3": "The pre-label explicit rules are consistent with the BootstrapInput component of the of the [The portal]", + "P3": "The pre-label explicit rules are consistent with the BootstrapInput component of the of the [The portal]", "Divider1": "Bidirectional binding displays labels", "Divider2": "Bidirectional bindings show that bidirectional bindings do not display labels", "Divider3": "Customize DisplayText", "SelectText": "Custom city", "Block9Title": "Static data", - "Block9Intro": "Hard-coded writing directly inside the Select component is suitable for static data drop-down boxes", + "Block9Intro": "Hard-coded writing directly inside the Select component is suitable for static data drop-down boxes", "Block10Title": "Enumerate the data", "Block10Intro": "an example of a type enumerated a select component binding", - "P4": "Enumeration When the binding value is an empty enumeration type, the component automatically adds preferences internally through the PlaceHolder value, and when the PlaceHolder value is not set, please select ... as a preference, and this example binds the EnumEducation enumeration type data", - "P5": "Setting PalceHolder is not valid when the binding value is an enumerated type", + "P4": "Enumeration When the binding value is an empty enumeration type, the component automatically adds preferences internally through the PlaceHolder value, and when the PlaceHolder value is not set, please select ... as a preference, and this example binds the EnumEducation enumeration type data", + "P5": "Setting PalceHolder is not valid when the binding value is an enumerated type", "SelectText1": "Can be empty", "SelectText2": "Not empty", "Block11Title": "The binding can be an empty type", "Block11Intro": "an example of the Select component binding int? type", - "P6": "When the first option is selected, the binding value SelectIntItem to null ", + "P6": "When the first option is selected, the binding value SelectIntItem to null", "Block12Title": "The binding can be an empty Boolean type", - "Block12Intro": "an example of the bool? type of select component binding", + "Block12Intro": "an example of the bool? type of select component binding", "P7": "Can be used for the empty boolean type more than in the conditional search box", - "P8": "When the first option is selected, the binding value SelectIntItem to null ", + "P8": "When the first option is selected, the binding value SelectIntItem to null", "Block13Title": "Custom option templates", - "Block13Intro": "By setting the ItemTemplate you can customize the option rendering style", + "Block13Intro": "By setting the ItemTemplate you can customize the option rendering style", "BlockShowSearchTitle": "Drop-down box with search box", "BlockShowSearchIntro": "Controls whether the search box is displayed by setting the ShowSearch property, which is not displayed by default false", "Block15Title": "Drop-down box with confirmation", @@ -1540,32 +1540,32 @@ "OnText": "On", "OffText": "Off", "DisableTitle": "Disable the state", - "DisableIntro": "Control the unavailable state of the component by setting the IsDisabled property", + "DisableIntro": "Control the unavailable state of the component by setting the IsDisabled property", "ColorTitle": "Switch color", - "ColorIntro": "Set the switch status color by setting the OnColor OffColor property values", + "ColorIntro": "Set the switch status color by setting the OnColor OffColor property values", "BindingTitle": "Two-way binding", "BindingIntro": "Binding variables within a component, data is automatically synchronized", - "P2": "when the Switch component turns on bidirectional binding, the DisplayName label value is automatically obtained based on the bound Model property value and appears as a pre-Label , which can be customized to display the pre-label through the DisplayText property, or through the ShowLabel property turns off the display of the prelabel", - "P3": "The pre-label explicit rules are consistent with the BootstrapInput component of the [The portal]", + "P2": "when the Switch component turns on bidirectional binding, the DisplayName label value is automatically obtained based on the bound Model property value and appears as a pre-Label, which can be customized to display the pre-label through the DisplayText property, or through the ShowLabel property turns off the display of the prelabel", + "P3": "The pre-label explicit rules are consistent with the BootstrapInput component of the [The portal]", "DisplayText1": "An example of a two-way binding", "DivText1": "The binding value", "DividerText1": "Custom labels", - "P4": "Set the DisplayText value to custom label ", + "P4": "Set the DisplayText value to custom label ", "DisplayText2": "Custom labels", "DividerText2": "Occupants", - "P5": "The value of DisplayText is displayed when ShowLabel is true , regardless of whether the value is set", + "P5": "The value of DisplayText is displayed when ShowLabel is true, regardless of whether the value is set", "DividerText3": "Do not occupy seats", - "P6": "The value of DisplayText is not displayed when the ShowLabel is false ", + "P6": "The value of DisplayText is not displayed when the ShowLabel is false", "DisplayText3": "Do not display", "InnerTextTitle": "Displays built-in text", - "InnerTextIntro": "By setting ShowInnerText property control component displays built-in text", - "P7": "By setting the onInnerText OffInnerText property to change the built-in text, a Chinese character is recommended by default to customize the component width to increase the amount of built-in text", + "InnerTextIntro": "By setting ShowInnerText property control component displays built-in text", + "P7": "By setting the onInnerText OffInnerText property to change the built-in text, a Chinese character is recommended by default to customize the component width to increase the amount of built-in text", "LabelText1": "Default text:", "LabelText2": "Custom text:", "OnInnerText": "Be", "OffInnerText": "Not", "NullableTitle": "Can be an empty type switch", - "NullableIntro": "Control the default value of the Null value by setting the DefaultValueWhenNull property, which is false when not set", + "NullableIntro": "Control the default value of the Null value by setting the DefaultValueWhenNull property, which is false when not set", "Class": "Style", "Height": "Control height", "IsDisabled": "Whether to disable it", @@ -1593,12 +1593,12 @@ "BasicUsageIntro": "A large amount of text is acceptable", "BasicUsageLabel": "Basic usage", "DisableTitle": "Disable", - "DisableIntro": "When you set the IsDisabled property value to true , the component suppresses input", + "DisableIntro": "When you set the IsDisabled property value to true, the component suppresses input", "BindValue": "The binding value", "ReadonlyTitle": "Readonly", - "ReadonlyIntro": "When you set the readonly property, the component prohibits input", + "ReadonlyIntro": "When you set the readonly property, the component prohibits input", "HeightTitle": "height", - "HeightIntro": "When you set the rows property, component initialization displays a fixed row height", + "HeightIntro": "When you set the rows property, component initialization displays a fixed row height", "BindWayTitle": "Two-way binding", "BindWayIntro": "Binding variables within a component, data is automatically synchronized", "ShowLabel": "Whether to display the front label", @@ -1609,7 +1609,7 @@ "OnText": "On", "OffText": "Off", "Title": "Toggle", - "SubTitle": "The most common switching application is available with a value of true false ", + "SubTitle": "The most common switching application is available with a value of true false", "BasicUsageTitle": "Basic usage", "BasicUsageIntro": "Click the button to switch statuses", "BasicUsageP": "Click the first switch to output the log with value", @@ -1617,15 +1617,15 @@ "DisableIntro": "The switch is not available.", "BindToWayTitle": "Bind data in both directions", "BindToWayIntro": "Binding variables within a component, data is automatically synchronized", - "BindToWayP1": "when the Switch component turns on bidirectional binding, the DisplayName label value is automatically obtained based on the bound Model property value and appears as a pre-Label , which can be customized to display the pre-label through the DispalyText property, or through the ShowLabel property turns off the display of the prelabel", + "BindToWayP1": "when the Switch component turns on bidirectional binding, the DisplayName label value is automatically obtained based on the bound Model property value and appears as a pre-Label, which can be customized to display the pre-label through the DispalyText property, or through the ShowLabel property turns off the display of the prelabel", "BindToWayDiaspalyText1": "An example of a two-way binding", "BindToWayDiv": "The binding value:", "CustomLabelText": "Custom labels", - "BindToWayP2": "Set the DisplayText value to custom label ", - "BindToWayP3": "The
value of DisplayText is displayed when ShowLabel is true , regardless of whether the value is set", + "BindToWayP2": "Set the DisplayText value to custom label ", + "BindToWayP3": "The value of DisplayText is displayed when ShowLabel is true, regardless of whether the value is set", "OccupantsText": "Occupants", "NotOccupantsText": "Not Occupants", - "BindToWayP4": "The value of DisplayText is not displayed when the ShowLabel is false ", + "BindToWayP4": "The value of DisplayText is not displayed when the ShowLabel is false", "NotDisplayText": "Do not display", "Color": "Color", "IsDisabled": "Whether to disable it", @@ -1656,16 +1656,16 @@ "SearchableIntro": "In cases where there is a lot of data, you can search and filter the data.", "BindToWayTitle": "Two-way binding", "BindToWayIntro": "When component data changes, the bidirectional binding bind-Value values change synchronously", - "BindToWayP1": "Transfer component is a generic component that supports three binding types string IEnumerable<string> IEnumerable<SelectedItem> in this case bidirectional binding The SelectValue type is IEnumerable<SelectedItem> ", + "BindToWayP1": "Transfer component is a generic component that supports three binding types string IEnumerable<string> IEnumerable<SelectedItem> in this case bidirectional binding TheSelectValue type is IEnumerable<SelectedItem>", "BindToWayButtonText1": "Add", "ClientValidationTitle": "Client Validation", "ClientValidationIntro": "When component data changes, the bidirectional binding bind-Value values change synchronously", - "ClientValidationP1": "The Transfer component built into the ValidateForm component turns on client authentication, in this case the component bidirectional binding Model.Hobby type is IEnumerable<string> ", + "ClientValidationP1": "The Transfer component built into the ValidateForm component turns on client authentication, in this case the component bidirectional binding Model.Hobby type is IEnumerable<string>", "ClientValidationButtonText": "Submit", "DisableTitle": "Disable", - "DisableIntro": "When you set the IsDisabled property value to true , the component suppresses input", + "DisableIntro": "When you set the IsDisabled property value to true, the component suppresses input", "ItemStyleTitle": "Set the Item style", - "ItemStyleIntro": "By setting the OnSetItemClass callback method styles options based on the values of SelectedItem", + "ItemStyleIntro": "By setting the OnSetItemClass callback method styles options based on the values of SelectedItem", "Items": "A collection of component-bound data items", "LeftButtonTextAttr": "The left button displays text", "LeftPanelTextAttr": "The left panel Header displays text", @@ -1686,43 +1686,43 @@ "Title": "Upload", "SubTitle": "Upload the file by clicking", "BasicUsageTitle": "Basic usage", - "BasicUsageIntro": "The InputUpload component is used with other form components to display the file name, select the file and upload it by clicking the browse button, and by setting the ShowRemoveButton parameter, display the delete button, click the delete button to call back onDelete delegate method", + "BasicUsageIntro": "The InputUpload component is used with other form components to display the file name, select the file and upload it by clicking the browse button, and by setting the ShowRemoveButton parameter, display the delete button, click the delete button to call back onDelete delegate method", "BasicUsageLabelName": "Name:", "BasicUsageLabelAdress": "Adress:", "BasicUsageLabelPhoto": "Photo:", "FormTitle": "FormSettings", "FormIntro": "Use the file upload component to constrain the file format within the form", - "FormLi1": "Using the ValidateForm form component, custom validation is set by setting the fileValidation label of the model properties to support file extension size validation, in this case with the extension .png .jpg .jpeg and the file size limit to 50K ", - "FormLi2": "After selecting the file and not starting to upload the file, click the submit button to verify that the data is legitimate, and then upload the file OnSubmit callback delegate, noting that the Picture property type is IBrowserFile ", + "FormLi1": "Using the ValidateForm form component, custom validation is set by setting the fileValidation label of the model properties to support file extensionsizevalidation, in this case with the extension .png .jpg .jpeg and the file size limit to 50K", + "FormLi2": "After selecting the file and not starting to upload the file, click the submit button to verify that the data is legitimate, and then upload the file OnSubmit callback delegate, noting that the Pictureproperty type is IBrowserFile", "FormButtonText": "Submit", "ClickUploadTitle": "Click upload", - "ClickUploadIntro": "The ButtonUpload components, classic styles, user click button to pop up the file selection box.", - "ClickUploadP1": "Click on the browse button select file upload, in this case set IsMultiple-true multiple-selectable file can be uploaded", - "ClickUploadP2": "When you set up IsSingle , you can upload only one image or file", + "ClickUploadIntro": "The ButtonUpload components, classic styles, user click button to pop up the file selection box.", + "ClickUploadP1": "Click on the browse button select file upload, in this case set IsMultiple-true multiple-selectable file can be uploaded", + "ClickUploadP2": "When you set up IsSingle, you can upload only one image or file", "UploadedFilesTitle": "A list of files has been uploaded", - "UploadedFilesIntro": "Use DefaultFileList to set up uploaded content", + "UploadedFilesIntro": "Use DefaultFileList to set up uploaded content", "UploadFolderTitle": "Upload a folder", - "UploadFolderIntro": "Use DefaultFileList to set up uploaded content", + "UploadFolderIntro": "Use DefaultFileList to set up uploaded content", "AvatarUploadTitle": "User profile picture upload", - "AvatarUploadIntro": " AvatarUpload component, using the OnChange to limit the format and size of images uploaded by users. In this example, only jpg/png/bmp/jpeg/gif five picture formats are allowed", + "AvatarUploadIntro": "AvatarUpload component, using the OnChange to limit the format and size of images uploaded by users. In this example, only jpg/png/bmp/jpeg/gif five picture formats are allowed", "AvatarUploadP1": "Card form avatar box", "AvatarUploadP2": "Round avatar frame", - "AvatarUploadP3": "When you set up IsSingle , you can upload only one image or file", - "AvatarUploadP4": "
The component provides Accept property for upload file filtering, in this case the circular avatar box accepts both GIF and JPEG images, sets the Accept='image/gif, image/jpeg' and can be written as: Accept='image/*' if you don't restrict the format of the image. Whether this property is not secure or should be to file format validation using the server-side authentication
", + "AvatarUploadP3": "When you set up IsSingle, you can upload only one image or file", + "AvatarUploadP4": "
The component provides Accept property for upload file filtering, in this case the circular avatar box accepts both GIF and JPEG images, sets the Accept='image/gif, image/jpeg' and can be written as: Accept='image/*' if you don't restrict the format of the image. Whether this property is not secure or should be to file format validation using the server-side authentication
", "AvatarUploadP5": "RELATED: [Accept] < a href='http://www.iana.org/assignments/media-types/media-types.xhtml' target='_blank' >[Media Types]", - "AvatarUploadP6": "Set the preview address PrevUrl with the DefaultFileList property", + "AvatarUploadP6": "Set the preview address PrevUrl with the DefaultFileList property", "AvatarUploadP7": "Verify that an example of using a picture box is used in the form", "AvatarUploadButtonText": "Submit", "PreCardStyleTitle": "Preview the card style", - "PreCardStyleIntro": " CardUpload components and rendered in card-style band preview mode", - "PreCardStyleSSR": " SSR mode ", - "PreCardStyleServerSide": " Server Side mode, you can use the IWebHostEnvironment injection service to get to the wwwroot directory and save the file to the images/uploader , which does not require a direct call the controller secondary of MVC SaveToFile method", - "PreCardStyleWasm": " Wasm mode ", - "PreCardStyleWasmSide": "It wasn't available in wasm mode, IWebHostEnvironment needed to save files to the server side by calling webapi interface, and so on", - "PreCardStyleLink": "Interested students can view their knowledge of Upload components through the wiki in the open source repository related resources of the [The portal]", - "PreCardStyleValidation": "In this example, server-side verification prompts the file for too much prompt when the file size exceeds 200MB ", - "PreCardStyleP1": "In this example, the ShowProgress=true display upload progress bar", - "PreCardStyleP2": "When you set up IsSingle , you can upload only one image or file", + "PreCardStyleIntro": "CardUpload components and rendered in card-style band preview mode", + "PreCardStyleSSR": "SSR mode ", + "PreCardStyleServerSide": "Server Side mode, you can use the IWebHostEnvironment injection service to get to the wwwroot directory and save the file to the images/uploader, which does not require a direct call the controller secondary of MVCSaveToFile method", + "PreCardStyleWasm": "Wasm mode ", + "PreCardStyleWasmSide": "It wasn't available in wasm mode, IWebHostEnvironment needed to save files to the server side by calling webapi interface, and so on", + "PreCardStyleLink": "Interested students can view their knowledge of Upload components through the wiki in the open source repository related resources of the [The portal]", + "PreCardStyleValidation": "In this example, server-side verification prompts the file for too much prompt when the file size exceeds 200MB", + "PreCardStyleP1": "In this example, the ShowProgress=true display upload progress bar", + "PreCardStyleP2": "When you set up IsSingle, you can upload only one image or file", "FileIconTitle": "The file icon", "FileIconIntro": "Icons are displayed in different file formats", "Base64FormatTitle": "Base64 format", @@ -1769,20 +1769,21 @@ "Title": "ValidateForm", "SubTitle": "Form components that can be used for data compliance checks", "BasicUsageTitle": "Basic usage", - "BasicUsageIntro": "Data compliance checks are automatically performed when components placed in the ValidateForm are submitted", - "BasicUsageP1": "Component description:", - "BasicUsageLi1": " ValidateForm component supports asynchronous setting of Model values", - "BasicUsageLi2": "The form event is for OnValidSubmit OnInvalidSubmit", - "BasicUsageLi3": " Model parameter is required is not allowed to be empty", - "BasicUsageLi4": "Multiple buttons can be placed within the form to set whether the ButtonType='ButtonType.Submit' parameter is submitted to the form", - "BasicUsageLi5": "The client authentication mechanism supports the model's Required label, setting the default English prompt information when not set by setting the ErrorMessage parameter prompt", - "BasicUsageLi6": "The form checks by default whether the binding field values within the form are legitimate, and you can set the ValidateAllProperties property value to true if you need to check all fields in the model", - "BasicUsageLi7": "Set the asynchronous submission form by setting the value of the Button Button property IsAsync ", - "BasicUsageLi8": "Components within a form are typically used to bind the property values of Model in both directions using bidirectional binding techniques, causing the component to refresh and re-render when its value changes StateHasChanged , and the method is called, i.e. its component or page is refreshed and re-rendered", + "BasicUsageIntro": "Data compliance checks are automatically performed when components placed in the ValidateForm are submitted", + "BasicUsageP1": "Introduction", + "BasicUsageLi1": "ValidateForm component supports asynchronous setting of Model values", + "BasicUsageLi2": "The form event is for OnValidSubmit OnInvalidSubmit", + "BasicUsageLi3": "Model parameter is required is not allowed to be empty", + "BasicUsageLi4": "Multiple buttons can be placed within the form to set whether the ButtonType='ButtonType.Submit' parameter is submitted to the form", + "BasicUsageLi5": "The client authentication mechanism supports the model's Required label, setting the default English prompt information when not set by setting the ErrorMessage parameter prompt", + "BasicUsageLi6": "The form checks by default whether the binding field values within the form are legitimate, and you can set the ValidateAllProperties property value to true if you need to check all fields in the model", + "BasicUsageLi7": "Set the asynchronous submission form by setting the value of the Button Button property IsAsync", + "BasicUsageLi8": "Components within a form are typically used to bind the property values of Model in both directions using bidirectional binding techniques, causing the component to refresh and re-render when its value changes StateHasChanged, and the method is called, i.e. its component or page is refreshed and re-rendered", "BasicUsageLi9": "After the value of the component control in the form is modified, the OnFieldChanged method is called", + "FormLabelWidth": "The default width of component front label is 120px. If you need more, please change the style variable --bs-row-label-width in the project style file", "BasicUsageP2": "Note:", "InnerComponentTitle": "Built-in components", - "InnerComponentIntro": "Place the support form components into the ValidateForm ", + "InnerComponentIntro": "Place the support form components into the ValidateForm", "InnerComponentLabel": "Examples of components that support form validation", "InnerComponentP1": "Example illustration", "InnerComponentLi1": "The name is the string type", @@ -1790,26 +1791,26 @@ "InnerComponentLi3": "Birthday is the datetime type", "InnerComponentLi4": "Education is an enumeration type", "InnerComponentLi5": "Hobbies are collection types", - "InnerComponentP2": "In this example, by setting the submit button property IsAsync to submit the form asynchronously, click Submit to disable itself, and resume after the asynchronous operation is complete", + "InnerComponentP2": "In this example, by setting the submit buttonproperty IsAsync to submit the form asynchronously, click Submit to disable itself, and resume after the asynchronous operation is complete", "CustomDisplsyErrorTitle": "Custom displays error messages", - "CustomDisplsyErrorIntro": "Set the custom error message by calling SetError method", - "CustomDisplsyErrorP1": " scenario ,
the client verification after the pass of the database save operation, if other problems, you can still make a form custom error prompt, in this case, after the data verification is legal, click the submit form button, the name field will show, the database already exists such a custom prompt
", + "CustomDisplsyErrorIntro": "Set the custom error message by calling SetError method", + "CustomDisplsyErrorP1": "Scenario

the client verification after the pass of the database save operation, if other problems, you can still make a form custom error prompt, in this case, after the data verification is legal, click the submit form button, the name field will show, the database already exists such a custom prompt

", "ValidatorAllFieldTitle": "Validate all field values", - "ValidatorAllFieldIntro": "This component checks the model binding field values within the form by default, setting the ValidateAllProperties values if you need to check all field values for the model", - "ValidatorAllFieldP1": "The Address is not placed in this example, because the ValidateAllProperties parameter value is true , the Addres field is still checked, and OnInvalidSubmit is triggered when the data is submitted after all the data in the timely form is legitimate callback delegate", + "ValidatorAllFieldIntro": "This component checks the model binding field values within the form by default, setting the ValidateAllProperties values if you need to check all field values for the model", + "ValidatorAllFieldP1": "The Address is not placed in this example, because the ValidateAllProperties parameter value is true, the Addres field is still checked, and OnInvalidSubmit is triggered when the data is submitted after all the data in the timely form is legitimate callback delegate", "ComplexValidationTitle": "Complex type support", "ComplexValidationIntro": "Supports any complex type of binding and validation", - "ComplexValidationP1": "The second binding in this example is a super-complex type ComplexModel.Dummy.Dummy2.Name Empty the value, click submit the form validate the data. After the second text box verifies compliance, the error prompt is displayed again by calling the SetError ", + "ComplexValidationP1": "The second binding in this example is a super-complex type ComplexModel.Dummy.Dummy2.Name Empty the value, click submit the formvalidate the data. After the second text box verifies compliance, the error prompt is displayed again by calling the SetError", "ComplexValidationPre": "ComplexForm.SetError('Dummy.Dummy2.Name','数据库中已存在');", "DynamicFormTitle": "Dynamically adjust the components within the form", "DynamicFormIntro": "By changing the components within the form, verify that the form can still be validated correctly", - "DynamicFormP1": "Click the Change component button address The component changes to count components, reset component button recovery, name address component is required, count The component has a default value of 0 So you can check through the data", + "DynamicFormP1": "Click the Change componentbutton address The component changes to count components, reset componentbutton recovery, name address component is required, count The component has a default value of 0 So you can check through the data", "InnerFormLabelTitle": "Set the component label right alignment within the form", "InnerFormLabelIntro": "Set the alignment of labels throughout the station or in a specific form with style uniformity", - "InnerFormLabelP1": "Address text box adds email address validation rules", + "InnerFormLabelP1": "Address text box adds email addressvalidation rules", "CustomValidationFormTitle": "Customize the verification form", "CustomValidationFormIntro": "Add custom validation rules by setting Rules", - "CustomValidationFormP1": "Address text box adds email address verification rules, click On Submission to verify", + "CustomValidationFormP1": "Address text box adds email addressverification rules, click On Submission to verify", "CustomValidationFormComment1": "Add mailbox validation rules", "CustomValidationFormComment2": "Used in Razor files", "Model": "Form component-bound data model, required properties", @@ -1831,14 +1832,14 @@ "Title": "Avatar", "SubTitle": "Present user or thing information as icons, pictures, or characters.", "BasicUsageTitle": "Basic usage", - "BasicUsageIntro": "Set the shape and size of your avatar is and Size .", + "BasicUsageIntro": "Set the shape and size of your avatar is and Size.", "BasicUsageDivider": "Split the line", "IconTitle": "The type of presentation", "IconIntro": "Three types are supported: icons, pictures, and characters", "BorderTitle": "Border", - "BorderIntro": "By setting the IsBorder whether to display the avatar border, the border in this mode when the picture fails to load is border-danger style, and when the load is successful, the border is border-success; The borders in the remaining modes are border-info ", + "BorderIntro": "By setting the IsBorder whether to display the avatar border, the border in this mode when the picture fails to load is border-danger style, and when the load is successful, the border is border-success; The borders in the remaining modes are border-info", "BorderDiv1": "The first fillet square avatar box is loaded correctly, so the border is blue ", - "BorderDiv2": "The second circular avatar loads the picture path incorrectly, so the border is red and the picture appears as the default icon", + "BorderDiv2": "The second circular avatar loads the picture path incorrectly, so the border is redand the picture appears as the default icon", "CircletTitle": "Asynchronous loading", "CircleIntro": "Suitable for scenarios where the picture address is obtained asynchronously by interfaces such as webapi", "Size": "The size of the avatar box", @@ -1857,7 +1858,7 @@ "BasicusageTitle": "Basic usage", "BasicusageIntro": "Small badge assembly in a variety of colors is available", "PillTitle": "Capsule badge", - "PillIntro": "Set the badge pendant with the of the property IsPill='true' to set the fillet", + "PillIntro": "Set the badge pendant with the of the property IsPill='true' to set the fillet", "ButtonTitle": "The badge inside the button", "ButtonIntro": "Button internal badge", "ButtonSpan": "The primary button", @@ -1870,9 +1871,9 @@ "Title": "BarcodeReader", "SubTitle": "This component scans the bar code by calling the camera to obtain the bar code content bar code/QR code", "Attention": "Pay special attention to:", - "Li1": "The site wants to enable https , which is required by browser vendors", - "Li2": "The mobile iOS system must use the Safari browser to switch the front/rear camera keys to turn off the function button", - "Li3": "The high probability of Android phones requiring native system browsers, Chrome is certain to be possible, and some browsers may not be compatible with cameras", + "Li1": "The site wants to enable https, which is required by browser vendors", + "Li2": "The mobile iOS system must use the Safari browser to switch the front/rear camera keys to turn off the function button", + "Li3": "The high probability of Android phones requiring native system browsers, Chrome is certain to be possible, and some browsers may not be compatible with cameras", "Li4": "The bar code recognition rate is related to the pixel, bar code size and mobile phone execution efficiency", "BasicUsageTitle": "Basic usage", "BasicUsageIntro": "The code is identified by the camera", @@ -1886,7 +1887,7 @@ "ImageLi2": "Select a picture that contains barcodes", "ImageLi3": "Start recognizing barcodes", "AutoStartTitle": "Start automatically", - "AutoStartIntro": "Turn on the camera automatically by setting the AutoStart parameter settings", + "AutoStartIntro": "Turn on the camera automatically by setting the AutoStart parameter settings", "AutoStartLi1": "Click the code to pop up the selection file box", "AutoStartLi2": "Select a picture that contains barcodes", "AutoStartLi3": "Start recognizing barcodes", @@ -1921,23 +1922,23 @@ "Title": "Block", "SubTitle": "Depending on the parameter conditions, the contents of the block are determined to be displayed, usually in conjunction with permission authorization", "BasicUsageTitle": "Common usage", - "BasicUsageIntro": "Determines whether component content is displayed by setting the OnQueryCondition callback method return value", + "BasicUsageIntro": "Determines whether component content is displayed by setting the OnQueryCondition callback method return value", "TemplateTitle": "Template", - "TemplateIntro": "By setting authorized NotAuthorized you can set what appears when you meet and do not meet the criteria, respectively", - "TemplateDiv1": "I am the component content that displayed in accordance with the criteria", - "TemplateDiv2": "I am the component content that displayed that not accordance the criteria", + "TemplateIntro": "By setting authorized NotAuthorized you can set what appears when you meet and do not meet the criteria, respectively", + "TemplateDiv1": "I am the component content that displayed in accordancewith the criteria", + "TemplateDiv2": "I am the component content that displayed that not accordancethe criteria", "AuthorizateTitle": "Judging by permissions", - "AuthorizateIntro": "This example simulates a user logging in to control whether the content Block is displayed, which is easier to use than AuthorizeView ", - "AuthorizateDiv1": "I am the contents of the component of the CondtionBlock , and the current logged-in user: {0}", - "AuthorizateDiv2": "I am the contents of the AuthorizeView component and the current logged-in user: {0}", - "AuthorizateDiv3": "I am the contents of the AuthorizeView component and are not currently logged in", + "AuthorizateIntro": "This example simulates a user logging in to control whether the content Block is displayed, which is easier to use than AuthorizeView", + "AuthorizateDiv1": "I am the contents of the component of the CondtionBlock, and the current logged-in user: {0}", + "AuthorizateDiv2": "I am the contents of the AuthorizeView component and the current logged-in user: {0}", + "AuthorizateDiv3": "I am the contents of the AuthorizeView component and are not currently logged in", "UsersTitle": "Pre-set the user", "UsersIntro": "By setting Users controls the display, which is displayed when the currently logged-in user is a preset user", "UsersDiv1": "The current user {0} allows you to see this content", "RolesTitle": "Preset roles", - "RolesIntro": "By setting Roles controls the display, which is displayed when the currently logged-in user is in a preset role", - "RolesDiv1": "The current role User allow this content to be seen", - "Tips": "By setting different Name as a resource, combined with the authorization system to authorize this resource can be achieved to any element of the Web page permission control", + "RolesIntro": "By setting Roles controls the display, which is displayed when the currently logged-in user is in a preset role", + "RolesDiv1": "The current role User allow this content to be seen", + "Tips": "By setting different Name as a resource, combined with the authorization system to authorize this resource can be achieved to any element of the Web page permission control", "OnQueryCondition": "Whether to display this Block", "ChildContent": "The content is displayed within the Block block", "Authorized": "The contents of the block block are displayed in a compliant condition", @@ -1955,7 +1956,7 @@ "FooterTitle": "Header 和 Footer", "FooterIntro": "You can show the content by adding the CardHeader and CardFooter elements", "ColorTitle": "A card with a border color", - "ColorIntro": "By setting, The makes the border and Body color appropriate", + "ColorIntro": "By setting, The makes the border and Body color appropriate", "CollapsibleTitle": "Collapsible", "CollapsibleIntro": "Card body can collapse/expand by set IsCollapsible to true", "CollapsibleBody": "Click card hader for collapse/expand card body", @@ -1979,10 +1980,10 @@ "BindTitle": "Data is bound in both directions", "BindIntro": "The calendar box automatically updates the text box when the time is selected", "ViewModelTitle": "Show by week", - "ViewModelIntro": "By setting the property CalendarViewModel.Week ", + "ViewModelIntro": "By setting the property CalendarViewModel.Week", "AppTitle": "Practical applications", "AppIntro": "Curriculum", - "AppText": "Currently, the ChildContext is temporarily rendered by the week component, and the data-related operating components in all cells are not encapsulated and will be refined later", + "AppText": "Currently, the ChildContext is temporarily rendered by the week component, and the data-related operating components in all cells are not encapsulated and will be refined later", "None": "None", "Chinese": "Chinese", "Math": "Math", @@ -2035,9 +2036,9 @@ "BasicUsageTitle": "Basic usage", "BasicUsageIntro": "Simple human-machine identification", "ImageTitle": "Specify the path and name of the graph bed", - "ImageIntro": "Set the map bed path ImagesPath, the picture name by ImagesName , and the background by calculating the full path name of the stitched random picture", + "ImageIntro": "Set the map bed path ImagesPath, the picture name by ImagesName, and the background by calculating the full path name of the stitched random picture", "ImageCallbackTitle": "Specify the graph bed delegate method", - "ImageCallbackIntro": "Set a custom method to stitch the full path name of a random picture by GetImageName ", + "ImageCallbackIntro": "Set a custom method to stitch the full path name of a random picture by GetImageName", "ImagesPath": "Figure the path of the bed", "ImagesName": "The name of the slider background file", "HeaderText": "Component Header displays text", @@ -2060,11 +2061,11 @@ "Title": "Carousel", "SubTitle": "In limited space, loop through the same type of pictures, text, and more", "BasicUsageTitle": "Basic usage", - "BasicUsageIntro": "A wide range of basic usages are used to bind components to an array of picture paths by setting the Items property values", + "BasicUsageIntro": "A wide range of basic usages are used to bind components to an array of picture paths by setting the Items property values", "FadeTitle": "Fade in and out", - "FadeIntro": "By setting the IsFade property, the picture switches with a fade-in and fade-out effect", + "FadeIntro": "By setting the IsFade property, the picture switches with a fade-in and fade-out effect", "OnClickTitle": "Click on the image to call back the event", - "OnClickIntro": "After you set the OnClick property by setting, click Image to trigger the OnClick callback delegate", + "OnClickIntro": "After you set the OnClick property by setting, click Image to trigger the OnClick callback delegate", "Images": "Images collection", "IsFade": "Whether to fade in and out", "Width": "Set the width of the picture", @@ -2095,13 +2096,13 @@ "Li1": "Displays the percentage of progress for a task", "Li2": "Count the proportion of certain indicators.", "BasicUsageTitle": "Basic usage", - "BasicUsageIntro": "Set the circular progress by setting the Value property", + "BasicUsageIntro": "Set the circular progress by setting the Value property", "IncreaseSpan": "Increase", "DecreaseSpan": "Decrease", "ColorTitle": "Color", - "ColorIntro": "Set the color of the circular progress bar by setting the Color property", + "ColorIntro": "Set the color of the circular progress bar by setting the Color property", "StrokeWidthTitle": "The width of the progress bar", - "StrokeWidthIntro": "Set the width of the circular progress bar by setting the StrokeWidth property", + "StrokeWidthIntro": "Set the width of the circular progress bar by setting the StrokeWidth property", "ChildContentTitle": "Customize the display", "ChildContentIntro": "Customize the display content with custom subcomponents", "ChildContentP1": "The size of the consumer population", @@ -2123,7 +2124,7 @@ "ColorTitle": "The child title color", "ColorIntro": "Each panel sets a different color", "ItemsTitle": "Dynamic updates", - "ItemsIntro": "The
template CollapseItems is set by conditional logic", + "ItemsIntro": "The template CollapseItems is set by conditional logic", "Consistency": "Consistency", "ConsistencyItem1": "Consistent with real life: consistent with real-life processes, logic, follow the user's habits of language and concepts;", "ConsistencyItem2": "Consistent in the interface: All elements and structures need to be consistent, such as design styles, icons and text, the location of elements, and so on.", @@ -2149,24 +2150,24 @@ "BasicUsage": "Basic usage", "BindWayTitle": "Bind data in both directions", "BindWayIntro": "Two-way binding automatically gets the display labels in the resource file", - "BindWayP1": "When the Dispaly components turn on bidirectional binding, the Display/DisplayName label value is automatically obtained based on the Model property value of the binding and appears as a pre-Label, with DisplayText properties you can customize the display of the pre-label, or by turning off the display of the pre-label through the ShowLabel property", + "BindWayP1": "When the Dispaly components turn on bidirectional binding, the Display/DisplayName label value is automatically obtained based on the Model property value of the binding and appears as a pre-Label, with DisplayText properties you can customize the display of the pre-label, or by turning off the display of the pre-label through the ShowLabel property", "BindWayCustomLabel": "Custom labels", - "BindWayP2": "Set the DisplayText value to custom label ", + "BindWayP2": "Set the DisplayText value to custom label ", "BindWayOccupants": "Occupants", - "BindWayP3": "The value of DisplayText is displayed when ShowLabel is true , regardless of whether the value is set", + "BindWayP3": "The value of DisplayText is displayed when ShowLabel is true, regardless of whether the value is set", "BindWayNotccupants": "Do not occupy seats", - "BindWayP4": "The value of DisplayText is not displayed when the ShowLabel is false ", + "BindWayP4": "The value of DisplayText is not displayed when the ShowLabel is false", "DataTypeTitle": "Generic binding", - "DataTypeIntro": "The Display component has built-in processing of enumerated collections array , customize formatting or callback delegate methods if they do not meet the criteria", + "DataTypeIntro": "The Display component has built-in processing of enumerated collections array, customize formatting or callback delegate methods if they do not meet the criteria", "EditorFormTitle": "Used within the form", - "EditorFormIntro": "The Dispaly component is used in form components EditorForm , and is used in detail pages and is not editable", + "EditorFormIntro": "The Dispaly component is used in form components EditorForm, and is used in detail pages and is not editable", "FormatStringTitle": "Custom format", - "FormatStringIntro": "When you set the FormatString property value to yyyy-MM-dd , the component displays a time format of the year and day", + "FormatStringIntro": "When you set the FormatString property value to yyyy-MM-dd, the component displays a time format of the year and day", "FormatStringettingText": "Set up", - "FormatStringP": "The Dispaly component binding byte[] array, formatted as an example of base64 encoded string", + "FormatStringP": "The Dispaly component binding byte[] array, formatted as an example of base64 encoded string", "LookupTitle": "Automatically translated into Text", - "LookupIntro": "Set the Lookup value to IEnumerable<SelectedItem> collection, through which the component will perform translations through the Value display Text ", - "LookupP1": "In this example, the component Value='@@IntValue' set Lookup='@@IntValueSource' component to display the Text corresponding to the value of the Value", + "LookupIntro": "Set the Lookup value to IEnumerable<SelectedItem> collection, through which the component will perform translations through the Value display Text", + "LookupP1": "In this example, the component Value='@@IntValue' set Lookup='@@IntValueSource' component to display the Text corresponding to the value of the Value", "ShowLabel": "Whether to display the front label", "DisplayText": "The front label displays text", "FormatString": "The numerically formatted string", @@ -2181,7 +2182,7 @@ "Title": "DropdownWidget", "SubTitle": "More for head information summary presentation", "BasicUsageTitle": "Basic usage", - "BasicUsageIntro": "Write pendant content directly on the page through childContent ", + "BasicUsageIntro": "Write pendant content directly on the page through childContent", "BasicUsageMessage": "You have 4 unread messages", "BasicUsageViewMessage": "View all messages", "BasicUsageNotify": "You have 10 unread notifications", @@ -2203,12 +2204,12 @@ "Title": "Empty", "SubTitle": "Sub Title PlaceHolder", "BasicUsageTitle": "Basic usage", - "BasicUsageIntro": "Just add Empty tag", + "BasicUsageIntro": "Just add Empty tag", "ImageTitle": "Set the path to the empty state picture", - "ImageIntro": "Just set the Image property", + "ImageIntro": "Just set the Image property", "ImageText": "No data at this time", "TemplateTitle": "Customize the empty state template", - "TemplateIntro": "The inner set renders custom components Template labels", + "TemplateIntro": "The inner set renders custom components Template labels", "TemplateIButtonText": "Go back to the previous page", "Image": "Customize the picture path", "Text": "Custom description information", @@ -2222,10 +2223,10 @@ "Title": "GroupBox", "SubTitle": "Simulate WinForm's GroupBox components", "BasicUsageTitle": "Basic usage", - "BasicUsageIntro": "Put your own components inside the GroupBox ", + "BasicUsageIntro": "Put your own components inside the GroupBox", "GroupTitle": "An example of a form", - "GroupP1": "I'm an example of GroupBox ", - "GroupP2": "For more examples, please refer to the EditorForms Form Example < a href'editorforms' target'_blank'> the portal ", + "GroupP1": "I'm an example of GroupBox", + "GroupP2": "For more examples, please refer to the EditorForms Form Example < a href'editorforms' target'_blank'> the portal ", "AttTitle": "Set the component title" }, "BootstrapBlazor.Shared.Samples.LinkButtons": { @@ -2259,12 +2260,12 @@ "SubTitle": "Provides rule arrangement controls", "BasicUsageTitle": "Basic usage", "BasicUsageIntro": "Apply to a large number of duplicate data implementation rule arrangements", - "BasicUsageP1": "The OnListViewItemClick event is triggered when you click on the image", + "BasicUsageP1": "The OnListViewItemClick event is triggered when you click on the image", "ProductListText": "The list of products", "PaginationTitle": "Paginated display", - "PaginationIntro": "Set the Pageable display paginated components", + "PaginationIntro": "Set the Pageable display paginated components", "GroupTitle": "Group display", - "GroupIntro": "Set up grouping GroupName data", + "GroupIntro": "Set up grouping GroupName data", "Items": "Component data source", "Pageable": "Whether to paginated", "PageItemsSource": "The quantity data source is displayed per page", @@ -2281,10 +2282,10 @@ "BasicUsageTitle": "Basic usage", "BasicUsageIntro": "The injection service displays client geographic location information", "BasicUsageP1": "Introduction to usage", - "BasicUsageP2": "The component uses the injection service IIPLocatorProvider call the Locate method", - "BasicUsageP3": "Because the geo-location query interface returns character sets that may be other character sets such as gbk , the program will report an error;", + "BasicUsageP2": "The component uses the injection service IIPLocatorProvider call the Locate method", + "BasicUsageP3": "Because the geo-location query interface returns character sets that may be other character sets such as gbk, the program will report an error;", "BasicUsageP4": "Solution:", - "BasicUsageP5": "The Startup file add the following phrase to the ConfigureServices method", + "BasicUsageP5": "The Startup file add the following phrase to the ConfigureServices method", "BasicUsageP6": "IP test data", "BasicUsageP7": "Jinan City, Shandong Province Unicom", "BasicUsageP8": "Hefei, Anhui Province, telecommunications", @@ -2294,7 +2295,7 @@ "BasicUsageP9": "Extend the custom geo-location query interface", "BasicUsageP10": "1. Implement a custom locator", "BasicUsageP11": "2. Configure a custom locator", - "BasicUsageP12": "Customize the locator CustomerLocator configuration with the callback delegate parameters the AddBootstrapBlazor method" + "BasicUsageP12": "Customize the locator CustomerLocator configuration with the callback delegate parameters the AddBootstrapBlazor method" }, "BootstrapBlazor.Shared.Samples.Ips": { "BasicUsageTitle": "Basic usage" @@ -2302,17 +2303,17 @@ "BootstrapBlazor.Shared.Samples.Prints": { "Title": "Print", "SubTitle": "Used to print a document or a local view", - "Tips1": "Set up PreviewUrl , open a new page for print preview and click the print button on this page for page printing", - "Tips2": "If you are printing a button in the Dialog component when you do not set the PreviewUrl , the pop-up contents are printed", + "Tips1": "Set up PreviewUrl, open a new page for print preview and click the print button on this page for page printing", + "Tips2": "If you are printing a button in the Dialog component when you do not set the PreviewUrl, the pop-up contents are printed", "PreButtonText": "Print", "PrintButtonTitle": "Basic usage", "PrintButtonIntro": "Print the page by clicking the print button", "PrintP1": "After clicking the print button below, a new page pops up for print preview, confirms that it is correct, and then clicks the print button in the print preview page for printer selection", "PrintDialogTitle": "Print the bullet window", - "PrintDialogIntro": "Turn on printing by setting up the ShowPrint ", - "PrintDialogP": "In this example, the pop-up window content is a custom component {0} the Footer where the button itself is located is hidden, so the Print button built into the pop-up window cannot be displayed, and setting the {1} makes the print The button appears in the title bar", + "PrintDialogIntro": "Turn on printing by setting up the ShowPrint", + "PrintDialogP": "In this example, the pop-up window content is a custom component {0} the Footer where the button itself is located is hidden, so the Print button built into the pop-up window cannot be displayed, and setting the {1} makes the printThe button appears in the title bar", "PrintServiceTitle": "Print service", - "PrintServiceIntro": "By setting up the content components to print, call the print service directly print jobs", + "PrintServiceIntro": "By setting up the content components to print, call the print servicedirectly print jobs", "DialogTitle": "The data query window" }, "BootstrapBlazor.Shared.Samples.Tags": { @@ -2348,13 +2349,13 @@ "CutomNodeStyleIntro": "You can customize the node color according to the actual scene, or use the icon directly.", "LeftTitle": "Shown on the left", "LeftIntro": "Content takes turns appearing on the left side of the timeline", - "LeftP": "Control the content appearing on the left side of the timeline by setting the IsLeft property", + "LeftP": "Control the content appearing on the left side of the timeline by setting the IsLeft property", "AlternateTitle": "Alternate presentations", "AlternateIntro": "内容在时间轴两侧轮流出现", - "AlternateP": "Control the alternating timeline left and right by setting the IsAlternate property", + "AlternateP": "Control the alternating timeline left and right by setting the IsAlternate property", "DispalyCustomComponentTitle": "Show custom components", "DispalyCustomComponentIntro": "Custom components are displayed on the timeline", - "DispalyCustomComponentP": "Control the custom components that the timeline displays by setting the CustomerComponent of the TimelineItem ", + "DispalyCustomComponentP": "Control the custom components that the timeline displays by setting the CustomerComponent of the TimelineItem", "SelectedItem1": "Positive order", "SelectedItem2": "Reverse order", "TimelineItemContent1": "Creation time", @@ -2411,10 +2412,10 @@ "BootstrapBlazor.Shared.Samples.Titles": { "Title": "Title", "SubTitle": "Used to set page title", - "Tips": "

NET6. 0 you can use the Microsoft PageTitle component to set the page title. This component additionally provides setting the current page title in the form of service

", + "Tips": "

NET6. 0 you can use the Microsoft PageTitle component to set the page title. This component additionally provides setting the current page title in the form of service

", "BasicUsageTitle": "BasicUsage", - "BasicUsageIntro": "Add the Title component to the web page and set the text attribute", - "BasicUsageTips": "The Title component is used by ordinary components after setting text , and can be called by the service when the text attribute is not set", + "BasicUsageIntro": "Add the Title component to the web page and set the text attribute", + "BasicUsageTips": "The Title component is used by ordinary components after setting text, and can be called by the service when the text attribute is not set", "BasicUsageP": "Set the Text property", "BasicUsageTitleText": "I am the title", "BasicUsageP1": "Test page", @@ -2491,7 +2492,7 @@ "BaseUsageText": "Basic usage", "IntroText1": "Click the Generate button to generate a QRCode", "DirectTitle": "Direct build", - "DirectIntro": "Specify the contents of the QR code with the Content parameter", + "DirectIntro": "Specify the contents of the QR code with the Content parameter", "SuccessText": "QR code generated successfully", "CallbackDescription": "Call back after QR code generation" }, diff --git a/src/BootstrapBlazor.Shared/Locales/zh.json b/src/BootstrapBlazor.Shared/Locales/zh.json index 20a8a9ba5296f6e5c2cd94a90c10e84d3bda96e4..720df626c95175a4eab3042cb3be08a597d9c9aa 100644 --- a/src/BootstrapBlazor.Shared/Locales/zh.json +++ b/src/BootstrapBlazor.Shared/Locales/zh.json @@ -1781,8 +1781,9 @@ "BasicUsageLi5": "客户端验证机制支持模型的 Required 标签,通过设置 ErrorMessage 参数设置提示信息,未设置时使用默认的英文提示信息", "BasicUsageLi6": "表单默认检查表单内绑定字段值是否合法,如需要检查模型所有字段时可设置 ValidateAllProperties 属性值为 true", "BasicUsageLi7": "通过设置提交按钮 Button 属性 IsAsync 值,设置异步提交表单", - "BasicUsageLi8": "表单内组件通常用法都是使用双向绑定技术对 Model 的属性值进行双向绑定,当其值改变时会导致所在组件 StateHasChanged,方法被调用,即其所在组件或者页面进行刷新重新渲染", + "BasicUsageLi8": "表单内组件通常用法都是使用双向绑定技术对 Model 的属性值进行双向绑定,当其值改变时会导致所在组件 StateHasChanged 方法被调用,即其所在组件或者页面进行刷新重新渲染", "BasicUsageLi9": "表单内组件控件的值修改后 OnFieldChanged 方法被调用", + "FormLabelWidth": "组件前置标签默认宽度为 120px 六个汉字,如需要更多汉字请在项目样式文件中更改样式变量 --bs-row-label-width 即可", "BasicUsageP2": "注意事项:", "InnerComponentTitle": "内置组件", "InnerComponentIntro": "放置支持表单组件到 ValidateForm 中", @@ -1796,7 +1797,7 @@ "InnerComponentP2": "本例中通过设置 提交按钮 属性 IsAsync 来异步提交表单,点击提交后禁用自身,异步操作完毕后恢复", "CustomDisplsyErrorTitle": "自定义显示错误信息", "CustomDisplsyErrorIntro": "通过调用 SetError 方法设置自定义错误信息", - "CustomDisplsyErrorP1": "应用场景,
客户端验证通过后进行数据库保存操作,如果出现其他问题,后仍然可以进行表单自定义错误提示,本例中数据验证合法后,点击提交表单按钮后,姓名字段会显示,数据库中已存在这样的自定义提示信息
", + "CustomDisplsyErrorP1": "应用场景

客户端验证通过后进行数据库保存操作,如果出现其他问题,后仍然可以进行表单自定义错误提示,本例中数据验证合法后,点击提交表单按钮后,姓名字段会显示,数据库中已存在这样的自定义提示信息

", "ValidatorAllFieldTitle": "验证所有字段值", "ValidatorAllFieldIntro": "此组件默认检查表单内模型绑定字段值,如需要检查模型所有字段值时设置 ValidateAllProperties 值", "ValidatorAllFieldP1": " 本例中未放置 Address,由于设置 ValidateAllProperties 参数值为 true,所以 Address 字段仍然被检查,及时表单内所有数据均合法后,提交数据时仍然触发 OnInvalidSubmit 回调委托", diff --git a/src/BootstrapBlazor.Shared/Samples/ValidateForms.razor b/src/BootstrapBlazor.Shared/Samples/ValidateForms.razor index 7e516047e75399c7f432c2473d830f914bcddb9e..e5034edd218a369ec247f6ce4d403afa80391116 100644 --- a/src/BootstrapBlazor.Shared/Samples/ValidateForms.razor +++ b/src/BootstrapBlazor.Shared/Samples/ValidateForms.razor @@ -6,7 +6,7 @@

@Localizer["SubTitle"]

-

@Localizer["BasicUsageP1"]

+

@Localizer["BasicUsageP1"]

-

@Localizer["BasicUsageP2"]

+

@Localizer["BasicUsageP2"]

- +

@Localizer["InnerComponentLabel"]

@Localizer["InnerComponentP1"]

  • @Localizer["InnerComponentLi1"]
  • diff --git a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor index 2ba2c96697df0825c197248cdc541d3b9e20c9ea..64fe01781f04286a4ca0fda2d5515f6ae914a306 100644 --- a/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor +++ b/src/BootstrapBlazor/Components/AutoComplete/AutoComplete.razor @@ -3,7 +3,7 @@ @if (IsShowLabel) { - + }
    diff --git a/src/BootstrapBlazor/Components/Cascader/Cascader.razor b/src/BootstrapBlazor/Components/Cascader/Cascader.razor index 3ceab78994d81f3f3a920a413b1e75f5cd843df2..dcb4b8c3ec340ac905a6757b937a4e8876d9c7d4 100644 --- a/src/BootstrapBlazor/Components/Cascader/Cascader.razor +++ b/src/BootstrapBlazor/Components/Cascader/Cascader.razor @@ -4,7 +4,7 @@ @if (IsShowLabel) { - + }