Skip to content

Commit 5b558fe

Browse files
committed
Disable card for embedded components in CRUD forms
1 parent c552fcd commit 5b558fe

File tree

7 files changed

+143
-98
lines changed

7 files changed

+143
-98
lines changed

GridBlazor/Columns/GridColumnBase.cs

Lines changed: 33 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ public abstract class GridColumnBase<T> : GridStyledColumn, IGridColumn<T>, IExp
3333
public IList<Action<object>> CrudActions { get; private set; }
3434
public IList<Func<object, Task>> CrudFunctions { get; private set; }
3535
public object CrudObject { get; private set; }
36+
public bool EnableCard { get; private set; } = true;
3637

3738
public Func<T, string> ValueConstraint { get; private set; }
3839
public string ValuePattern { get; private set; }
@@ -283,86 +284,86 @@ public IGridColumn<T> RenderComponentAs<TComponent>(IList<Action<object>> action
283284
return RenderComponentAs(typeof(TComponent), actions, functions, obj);
284285
}
285286

286-
public IGridColumn<T> RenderCrudComponentAs<TComponent>()
287+
public IGridColumn<T> RenderCrudComponentAs<TComponent>(bool enableCard = true)
287288
{
288-
return RenderCrudComponentAs<TComponent>(null, null, null);
289+
return RenderCrudComponentAs<TComponent>(null, null, null, enableCard);
289290
}
290291

291-
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Action<object>> actions)
292+
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Action<object>> actions, bool enableCard = true)
292293
{
293-
return RenderCrudComponentAs<TComponent>(actions, null, null);
294+
return RenderCrudComponentAs<TComponent>(actions, null, null, enableCard);
294295
}
295296

296-
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Func<object, Task>> functions)
297+
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Func<object, Task>> functions, bool enableCard = true)
297298
{
298-
return RenderCrudComponentAs<TComponent>(null, functions, null);
299+
return RenderCrudComponentAs<TComponent>(null, functions, null, enableCard);
299300
}
300301

301302
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Action<object>> actions,
302-
IList<Func<object, Task>> functions)
303+
IList<Func<object, Task>> functions, bool enableCard = true)
303304
{
304-
return RenderCrudComponentAs<TComponent>(actions, functions, null);
305+
return RenderCrudComponentAs<TComponent>(actions, functions, null, enableCard);
305306
}
306307

307-
public IGridColumn<T> RenderCrudComponentAs<TComponent>(object obj)
308+
public IGridColumn<T> RenderCrudComponentAs<TComponent>(object obj, bool enableCard = true)
308309
{
309-
return RenderCrudComponentAs<TComponent>(null, null, obj);
310+
return RenderCrudComponentAs<TComponent>(null, null, obj, enableCard);
310311
}
311312

312-
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Action<object>> actions, object obj)
313+
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Action<object>> actions, object obj, bool enableCard = true)
313314
{
314-
return RenderCrudComponentAs<TComponent>(actions, null, obj);
315+
return RenderCrudComponentAs<TComponent>(actions, null, obj, enableCard);
315316
}
316317

317-
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Func<object, Task>> functions, object obj)
318+
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Func<object, Task>> functions, object obj, bool enableCard = true)
318319
{
319-
return RenderCrudComponentAs<TComponent>(null, functions, obj);
320+
return RenderCrudComponentAs<TComponent>(null, functions, obj, enableCard);
320321
}
321322

322323
public IGridColumn<T> RenderCrudComponentAs<TComponent>(IList<Action<object>> actions,
323-
IList<Func<object, Task>> functions, object obj)
324+
IList<Func<object, Task>> functions, object obj, bool enableCard = true)
324325
{
325-
return RenderCrudComponentAs<TComponent, TComponent, TComponent, TComponent>(actions, functions, obj);
326+
return RenderCrudComponentAs<TComponent, TComponent, TComponent, TComponent>(actions, functions, obj, enableCard);
326327
}
327328

328-
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>()
329+
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(bool enableCard = true)
329330
{
330-
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(null, null, null);
331+
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(null, null, null, enableCard);
331332
}
332333

333-
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Action<object>> actions)
334+
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Action<object>> actions, bool enableCard = true)
334335
{
335-
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(actions, null, null);
336+
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(actions, null, null, enableCard);
336337
}
337338

338-
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Func<object, Task>> functions)
339+
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Func<object, Task>> functions, bool enableCard = true)
339340
{
340-
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(null, functions, null);
341+
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(null, functions, null, enableCard);
341342
}
342343

343344
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Action<object>> actions,
344-
IList<Func<object, Task>> functions)
345+
IList<Func<object, Task>> functions, bool enableCard = true)
345346
{
346-
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(actions, functions, null);
347+
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(actions, functions, null, enableCard);
347348
}
348349

349-
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(object obj)
350+
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(object obj, bool enableCard = true)
350351
{
351-
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(null, null, obj);
352+
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(null, null, obj, enableCard);
352353
}
353354

354-
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Action<object>> actions, object obj)
355+
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Action<object>> actions, object obj, bool enableCard = true)
355356
{
356-
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(actions, null, obj);
357+
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(actions, null, obj, enableCard);
357358
}
358359

359-
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Func<object, Task>> functions, object obj)
360+
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Func<object, Task>> functions, object obj, bool enableCard = true)
360361
{
361-
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(null, functions, obj);
362+
return RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(null, functions, obj, enableCard);
362363
}
363364

364365
public IGridColumn<T> RenderCrudComponentAs<TCreateComponent, TReadComponent, TUpdateComponent, TDeleteComponent>(IList<Action<object>> actions,
365-
IList<Func<object, Task>> functions, object obj)
366+
IList<Func<object, Task>> functions, object obj, bool enableCard = true)
366367
{
367368
/// Get type arguments from any <see cref="ICustomGridComponent<>"/> interface
368369
/// in <paramref name="componentType"/> to make sure <see cref="T"/> is assignable to it
@@ -423,6 +424,7 @@ where iType.IsGenericType &&
423424
CrudActions = actions;
424425
CrudFunctions = functions;
425426
CrudObject = obj;
427+
EnableCard = enableCard;
426428

427429
return this;
428430
}

GridBlazor/Pages/GridCreateComponent.razor

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,16 @@
187187
<label class="col-form-label col-md-@column.CrudLabelWidth.ToString()">@column.Title</label>
188188
}
189189
<div class="col-md-@((12 - column.CrudLabelWidth).ToString())">
190-
@_renderFragments.Get(column.Name)
190+
@if (column.EnableCard)
191+
{
192+
<div class="card panel panel-default">
193+
<div class="card-body panel-body">@_renderFragments.Get(column.Name)</div>
194+
</div>
195+
}
196+
else
197+
{
198+
@_renderFragments.Get(column.Name)
199+
}
191200
</div>
192201
</div>
193202
}
@@ -197,11 +206,12 @@
197206
{
198207
foreach (var tabGruop in _tabGroups)
199208
{
200-
var tabLabels = GridComponent.Grid.Columns
201-
.Where(r => r.TabGroup != null && r.TabGroup.Equals(tabGruop) && _renderFragments.Keys.Any(s => s.Equals(r.Name)))
202-
.Select(r => new SelectItem(r.Name, r.Title));
209+
var columns = GridComponent.Grid.Columns
210+
.Where(r => r.TabGroup != null && r.TabGroup.Equals(tabGruop) && _renderFragments.Keys.Any(s => s.Equals(r.Name)));
211+
var tabLabels = columns.Select(r => new SelectItem(r.Name, r.Title));
212+
var column = columns.FirstOrDefault();
203213
<div class="form-group row">
204-
<div class="col-md-12">
214+
<div class="col-md-offset-@(column.CrudLabelWidth.ToString()) offset-md-@(column.CrudLabelWidth.ToString()) col-md-@((12 - column.CrudLabelWidth).ToString())">
205215
<div class="card panel panel-default">
206216
<div class="card-body panel-body">
207217
<GridTabComponent TabLabels="@tabLabels" TabContent="@_renderFragments" />

GridBlazor/Pages/GridDeleteComponent.razor

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,16 @@
105105
<label class="col-form-label col-md-@column.CrudLabelWidth.ToString()">@column.Title</label>
106106
}
107107
<div class="col-md-@((12 - column.CrudLabelWidth).ToString())">
108-
@_renderFragments.Get(column.Name)
108+
@if (column.EnableCard)
109+
{
110+
<div class="card panel panel-default">
111+
<div class="card-body panel-body">@_renderFragments.Get(column.Name)</div>
112+
</div>
113+
}
114+
else
115+
{
116+
@_renderFragments.Get(column.Name)
117+
}
109118
</div>
110119
</div>
111120
}
@@ -115,11 +124,12 @@
115124
{
116125
foreach (var tabGruop in _tabGroups)
117126
{
118-
var tabLabels = GridComponent.Grid.Columns
119-
.Where(r => r.TabGroup != null && r.TabGroup.Equals(tabGruop) && _renderFragments.Keys.Any(s => s.Equals(r.Name)))
120-
.Select(r => new SelectItem(r.Name, r.Title));
127+
var columns = GridComponent.Grid.Columns
128+
.Where(r => r.TabGroup != null && r.TabGroup.Equals(tabGruop) && _renderFragments.Keys.Any(s => s.Equals(r.Name)));
129+
var tabLabels = columns.Select(r => new SelectItem(r.Name, r.Title));
130+
var column = columns.FirstOrDefault();
121131
<div class="form-group row">
122-
<div class="col-md-12">
132+
<div class="col-md-offset-@(column.CrudLabelWidth.ToString()) offset-md-@(column.CrudLabelWidth.ToString()) col-md-@((12 - column.CrudLabelWidth).ToString())">
123133
<div class="card panel panel-default">
124134
<div class="card-body panel-body">
125135
<GridTabComponent TabLabels="@tabLabels" TabContent="@_renderFragments" />

GridBlazor/Pages/GridReadComponent.razor

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,16 @@
104104
<label class="col-form-label col-md-@column.CrudLabelWidth.ToString()">@column.Title</label>
105105
}
106106
<div class="col-md-@((12 - column.CrudLabelWidth).ToString())">
107-
@_renderFragments.Get(column.Name)
107+
@if (column.EnableCard)
108+
{
109+
<div class="card panel panel-default">
110+
<div class="card-body panel-body">@_renderFragments.Get(column.Name)</div>
111+
</div>
112+
}
113+
else
114+
{
115+
@_renderFragments.Get(column.Name)
116+
}
108117
</div>
109118
</div>
110119
}
@@ -114,11 +123,12 @@
114123
{
115124
foreach (var tabGruop in _tabGroups)
116125
{
117-
var tabLabels = GridComponent.Grid.Columns
118-
.Where(r => r.TabGroup != null && r.TabGroup.Equals(tabGruop) && _renderFragments.Keys.Any(s => s.Equals(r.Name)))
119-
.Select(r => new SelectItem(r.Name, r.Title));
126+
var columns = GridComponent.Grid.Columns
127+
.Where(r => r.TabGroup != null && r.TabGroup.Equals(tabGruop) && _renderFragments.Keys.Any(s => s.Equals(r.Name)));
128+
var tabLabels = columns.Select(r => new SelectItem(r.Name, r.Title));
129+
var column = columns.FirstOrDefault();
120130
<div class="form-group row">
121-
<div class="col-md-12">
131+
<div class="col-md-offset-@(column.CrudLabelWidth.ToString()) offset-md-@(column.CrudLabelWidth.ToString()) col-md-@((12 - column.CrudLabelWidth).ToString())">
122132
<div class="card panel panel-default">
123133
<div class="card-body panel-body">
124134
<GridTabComponent TabLabels="@tabLabels" TabContent="@_renderFragments" />

GridBlazor/Pages/GridUpdateComponent.razor

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,16 @@
221221
<label class="col-form-label col-md-@column.CrudLabelWidth.ToString()">@column.Title</label>
222222
}
223223
<div class="col-md-@((12 - column.CrudLabelWidth).ToString())">
224-
@_renderFragments.Get(column.Name)
224+
@if (column.EnableCard)
225+
{
226+
<div class="card panel panel-default">
227+
<div class="card-body panel-body">@_renderFragments.Get(column.Name)</div>
228+
</div>
229+
}
230+
else
231+
{
232+
@_renderFragments.Get(column.Name)
233+
}
225234
</div>
226235
</div>
227236
}
@@ -231,11 +240,12 @@
231240
{
232241
foreach (var tabGruop in _tabGroups)
233242
{
234-
var tabLabels = GridComponent.Grid.Columns
235-
.Where(r => r.TabGroup != null && r.TabGroup.Equals(tabGruop) && _renderFragments.Keys.Any(s => s.Equals(r.Name)))
236-
.Select(r => new SelectItem(r.Name, r.Title));
243+
var columns = GridComponent.Grid.Columns
244+
.Where(r => r.TabGroup != null && r.TabGroup.Equals(tabGruop) && _renderFragments.Keys.Any(s => s.Equals(r.Name)));
245+
var tabLabels = columns.Select(r => new SelectItem(r.Name, r.Title));
246+
var column = columns.FirstOrDefault();
237247
<div class="form-group row">
238-
<div class="col-md-12">
248+
<div class="col-md-offset-@(column.CrudLabelWidth.ToString()) offset-md-@(column.CrudLabelWidth.ToString()) col-md-@((12 - column.CrudLabelWidth).ToString())">
239249
<div class="card panel panel-default">
240250
<div class="card-body panel-body">
241251
<GridTabComponent TabLabels="@tabLabels" TabContent="@_renderFragments" />

0 commit comments

Comments
 (0)