C# Blazor 学习笔记(8):row/col布局开发

文章目录

前言

可能是我用的element ui和 uView这种第三方组件用的太多了。我上来就希望能使用这些组件。但是目前Blazor目前的生态其实并不完善,所以很多组件要我们自己写。

我们对组件的要求是

我们在组件化一共有三个目的。

  • 不用写CSS
  • 不用写html
  • 不用写交互逻辑

相关文章

C# Blazor 学习笔记(7):组件嵌套开发

代码

我们直接上结果

row和col组件

为了防止和别的UI库冲突,我使用了B_为前缀

B_row

razor

java 复制代码
<div class="B_Row">
    @ChildContent
</div>

@code {
    [Parameter] 
    public RenderFragment ChildContent { get; set; }
}

razor.css

css 复制代码
.B_Row {
    /*border: 1px solid black;*/
    display: grid;
    /*flex-direction: row;*/
    width: 100%;
    grid-template-columns: repeat(12,1fr);
    grid-auto-flow: column;
}

B_col

razor

java 复制代码
@if (Offset != 0)
{
    <div style=" grid-column-start: span @(Offset)">
    </div>
}

<div class="B_Col" style=" grid-column-start: span @(Span)">
    @ChildContent
</div>

@code {
    [Parameter]
    public RenderFragment ChildContent { get; set; }

    [Parameter]
    public float Span { get; set; } = 12;

    [Parameter]
    public float Offset { get; set; } = 0;

    private Dictionary<string, object> ContentCss = new Dictionary<string, object>
    {

    };

}

razor.css

css 复制代码
body {
}

.B_Col{
    border: 1px solid black;
    /*width:20%;*/
    /*display:inline-grid;*/
    /*grid-column-start:span 2;*/
}

tips:我这里用border是为了明显地展示

结构

使用

html 复制代码
<B_row>
    <B_col >1</B_col>
</B_row>
<B_row>
    <B_col  Span = "6">1</B_col>
</B_row>
<B_row>
    <B_col  Span = "6" Offset = "3">1</B_col>
</B_row>
<B_row>
    <B_col Span = "3">1</B_col>
    <B_col Span = "3">2</B_col>
    <B_col Span = "3">3</B_col>
    <B_col Span = "3">4</B_col>
</B_row>
相关推荐
alibaba_张无忌20 分钟前
金融学期末速成笔记
笔记·金融
Back~~23 分钟前
MFC1(note)
学习
无敌最俊朗@1 小时前
unity3d————接口基础知识点
开发语言·c#
engchina1 小时前
Oracle ADB 导入 BANK_GRAPH 的学习数据
数据库·学习·oracle·graph
Komorebi.py2 小时前
【Linux】-学习笔记03
linux·笔记·学习
金蝶软件小李2 小时前
C#界面设计
计算机视觉·c#
程序员劝退师_2 小时前
Kafka学习笔记
笔记·学习·kafka
帅比九日2 小时前
【HarmonyOS NEXT】实战——登录页面
前端·学习·华为·harmonyos
李笠^_^2 小时前
Python学习------第八天
学习
Lotay_天天3 小时前
删库跑路,启动!
学习