<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      深入淺出Blazor webassembly之通過CascadingValue組件實現向子級組件傳值

      在一般編程語言中, 向函數傳值通常有兩種方法, 一種是通過函數的參數傳值, 另一種是通過類屬性或全局變量實現.

      向一個blazor 組件傳值, 與函數傳值非常像, 也有兩種基本形式:

      (1) 通過給組件 parameter 傳值, 這與函數參數傳值類似, 已經在前面文章中介紹過, 形如 <Child Parameter1="V1"/>

      (2) 通過 CascadingValue 組件下西甲組件撒值, 這與函數通過全局變量傳值類似,  不需要提供入參, 但需要形參, 而且傳值是雙向的,   本文重點講解這個.

       

      CascadingValue是blazor內置組件, 可以使用該組件實現向下級組件傳值,  不需要他方法很簡單.

      總體思路:

      • 在父級組件中, 在子組件外頭包一個CascadingValue 組件, 通過CascadingValue組件的Value屬性將值傳到下級組件中, 最好是為該Value指定一個Name, 這樣能實現精準傳值.
      • 在子組件的C#代碼中, 使用 CasacadingParameter注解修飾一個屬性, 在注解上加上Name參數, 對接上層組件傳入的那個Value.
      • CascadingValue 組件除了Value和Name屬性外, 還是一個IsFixed屬性, 如果傳值是一次性的, 最好將IsFixed設置為ture, 這樣渲染性能會更好一些.
      • 一個 CascadingValue 組件只能傳一個值, 如果要傳多個值, 只需要加多個 CascadingValue 組件即可.

      示例代碼的功能, 共有三層組件, 最頂層組件需要傳值到第二/三層組件, 控制它們的顯示樣式.

      @*=================================*@
      @*file:Parent.razor*@
      @*=================================*@
      @page "/parent"
      <h1>Parent component with CascadingValue</h1>
      <button type="button" class="btn btn-primary" @onclick="@ChangeChildStyle">Change Child in Green</button>
      <button type="button" class="btn btn-primary" @onclick="@ChangeGrandChildStyle">Change Grandchild in Green</button>
      <CascadingValue Value="@ChildStyle1" Name="ChildStyle" IsFixed="false">
          <CascadingValue Value="@GrandChildStyle1" Name="GrandChildStyle" IsFixed="false">
              <Child></Child>  @*注意: 這里沒有入參 *@
          </CascadingValue>
      </CascadingValue>
      
      
      @code {
          public string ChildStyle1 = "color:blue";
          public string GrandChildStyle1 = "color:red";
          void ChangeChildStyle()
          {
              ChildStyle1 = "color:green";
          }
          void ChangeGrandChildStyle()
          {
              GrandChildStyle1 = "color:green";
          }
      }

       

      @*=================================*@
      @*file:Child.razor*@
      @*=================================*@
      <h1 style="@ChildStyle2"> Child component</h1>
      <GrandChild></GrandChild>
      @code{
          [CascadingParameter(Name="ChildStyle")]
          public string ChildStyle2{get ;set;} 
      }

       

      @*=================================*@
      @*file:GrandChild.razor*@
      @*=================================*@
      <h1 style="@GrandChildStyle2"> GrandChild component</h1>
      @code{
            [CascadingParameter(Name="GrandChildStyle")]    
            public string GrandChildStyle2{get ;set; }
      }

       

      UI的初始效果:

       

      點擊按鈕后的效果:

       

      posted @ 2021-08-22 20:50  harrychinese  閱讀(662)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 高淳县| 欧美日产国产精品日产| 美女无遮挡免费视频网站| 国产欧美精品一区二区三区-老狼| 午夜福利一区二区三区在线观看| 天干天干啦夜天干天2017| 2022最新国产在线不卡a| 人妻出轨av中文字幕| 两个人日本www免费版| 国产精品国产三级国快看| 国产精品久久久国产盗摄| 国产SUV精品一区二区88L| 亚洲一区av在线观看| 色欲狠狠躁天天躁无码中文字幕| 波多野结衣久久一区二区| 免费看成人aa片无码视频吃奶 | 99久久精品国产熟女拳交 | 十八禁国产精品一区二区| 亚洲国产午夜福利精品| 国产美熟女乱又伦AV果冻传媒| 日本无产久久99精品久久| 在线a人片免费观看| 风流老熟女一区二区三区| 天堂mv在线mv免费mv香蕉| 我国产码在线观看av哈哈哈网站| 亚洲中文字幕伊人久久无码| 波多野结衣视频一区二区| 国产免费又黄又爽又色毛| 精品国产成人一区二区| 国产精品黄色一区二区三区| 一本av高清一区二区三区| 亚洲旡码欧美大片| 亚洲国产综合av在线观看| 水蜜桃视频在线观看免费18| 日韩精品一二区在线观看| 中文字幕少妇人妻精品| 玩弄漂亮少妇高潮白浆| 亚洲精品国产无套在线观| 色综合久久中文综合久久激情 | 亚洲av激情五月性综合| 1024你懂的国产精品|