Пример. Пример как назначить параметр с родительского компонента на дочерний

Пример 1

Child component (‎без значений атрибутов‎)

Это компонент наследник
Значение свойства по умолчанию

Child component (‎с значениями атрибутов‎)

Set by Parent
Значение свойства устанавливлено в компоненте предка.

Пример 2

Из поля компонента предка
Значение свойства по умолчанию
Из метода компонента предка
Значение свойства по умолчанию
Tuesday, April 1, 2025
Значение свойства по умолчанию
Из объекта (class PanelData.Title) компонент предка
Style = italic. Из метода компонента предка
Исходный код

        --------------\Pages\Parametr\ParameterParent.razor:
        <h1>Пример 2</h1>

        <ParameterChild Title="@title" />

        <ParameterChild Title="@GetTitle()" />

        <ParameterChild Title="@DateTime.Now.ToLongDateString()" />

        <ParameterChild Title="@panelData.Title"  Body=@panelBody />

        @code {
        private string title = "Из поля компонента предка";
       
        private PanelData panelData = new PanelData();

        PanelBody panelBody = new PanelBody()
              { Style = "italic", Text = "Style = italic. Из метода компонента предка" };

         private string GetTitle()
         {
           return "Из метода компонента предка";
         }

          private class PanelData
         {
           public string Title { get; set; } = "Из объекта (class PanelData.Title) компонент  предка";
         }
        }



        -----------------\Shared\Parameter\ParameterChild.razor
        <div class="card w-25" >
        <div class="card-header font-weight-bold">@Title</div>
        <div class="card-body" style="font-style:@Body.Style">@Body.Text</div>
        </div>

        @code {
            [Parameter]
            public string Title { get; set; } = "Это компонент наследник";

            [Parameter]
            public PanelBody Body { get; set; } = new PanelBody()
            {
                Text = "Значение свойства по умолчанию",
                Style = "normal"
            };

        }

    
Произошла ошибка. Это приложение может больше не отвечать до перезагрузки.(переведено) Произошла ошибка. Это приложение может больше не отвечать до перезагрузки.(переведено) Reload 🗙
Web hosting by Somee.com