Frozen columns
GridControlColumns pinned to either edge, header bands over column groups, and columns generated from data annotations.
Overview
A column with IsFrozen stays in view while the rest scroll sideways; FrozenPosition puts it on the
left or the right edge. ColumnHeaderBands draws a second header row that spans named groups of columns, and a
column's HeaderBand joins a band by name. With AutoGenerateColumns the grid reads the columns from the
row type instead: Display, DisplayName, DisplayFormat, Editable and
Key attributes set the header, band, order, format and whether a cell can be edited.
Examples
#Header bands and frozen columns
Two hundred rows. ID and Code are frozen on the left, Status and Actions on the right; scroll the grid sideways and they stay put. The bands Identity, Product, Amounts and Workflow span their columns. Qty, Price and Discount accept edits in place (EditMode.Batch). Remove drops the row and the count below updates.
| Identity | Product | Amounts | Workflow | |||||
|---|---|---|---|---|---|---|---|---|
| ID | Code | Product Name | Category | Qty | Price | Discount | Status | Actions |
| 1 | SKU-00001 | Material Item #1 | Hardware | 17 | $19.75 | 2.5 | Active | |
| 2 | SKU-00002 | Material Item #2 | Lumber | 24 | $24.00 | 5.0 | Active | |
| 3 | SKU-00003 | Material Item #3 | Paint | 31 | $28.25 | 7.5 | Active | |
| 4 | SKU-00004 | Material Item #4 | Plumbing | 38 | $32.50 | 10.0 | Active | |
| 5 | SKU-00005 | Material Item #5 | Electrical | 45 | $36.75 | 0.0 | Active | |
| 6 | SKU-00006 | Material Item #6 | Electronics | 52 | $41.00 | 2.5 | Pending | |
| 7 | SKU-00007 | Material Item #7 | Hardware | 59 | $45.25 | 5.0 | Active | |
| 8 | SKU-00008 | Material Item #8 | Lumber | 66 | $49.50 | 7.5 | Active | |
| 9 | SKU-00009 | Material Item #9 | Paint | 73 | $53.75 | 10.0 | Active | |
| 10 | SKU-00010 | Material Item #10 | Plumbing | 80 | $58.00 | 0.0 | Active | |
| 11 | SKU-00011 | Material Item #11 | Electrical | 87 | $62.25 | 2.5 | Active | |
| 12 | SKU-00012 | Material Item #12 | Electronics | 94 | $66.50 | 5.0 | Pending | |
| 13 | SKU-00013 | Material Item #13 | Hardware | 101 | $70.75 | 7.5 | Active | |
| 14 | SKU-00014 | Material Item #14 | Lumber | 108 | $75.00 | 10.0 | Active | |
| 15 | SKU-00015 | Material Item #15 | Paint | 115 | $79.25 | 0.0 | Active | |
| 16 | SKU-00016 | Material Item #16 | Plumbing | 122 | $83.50 | 2.5 | Active | |
| 17 | SKU-00017 | Material Item #17 | Electrical | 129 | $87.75 | 5.0 | Active | |
| 18 | SKU-00018 | Material Item #18 | Electronics | 136 | $92.00 | 7.5 | Pending | |
| 19 | SKU-00019 | Material Item #19 | Hardware | 143 | $96.25 | 10.0 | Active | |
| 20 | SKU-00020 | Material Item #20 | Lumber | 150 | $100.50 | 0.0 | Active | |
| 21 | SKU-00021 | Material Item #21 | Paint | 157 | $104.75 | 2.5 | Active | |
| 22 | SKU-00022 | Material Item #22 | Plumbing | 14 | $109.00 | 5.0 | Active | |
| 23 | SKU-00023 | Material Item #23 | Electrical | 21 | $113.25 | 7.5 | Active | |
| 24 | SKU-00024 | Material Item #24 | Electronics | 28 | $117.50 | 10.0 | Pending | |
| 25 | SKU-00025 | Material Item #25 | Hardware | 35 | $15.50 | 0.0 | Active | |
| 26 | SKU-00026 | Material Item #26 | Lumber | 42 | $19.75 | 2.5 | Active | |
| 27 | SKU-00027 | Material Item #27 | Paint | 49 | $24.00 | 5.0 | Active | |
| 28 | SKU-00028 | Material Item #28 | Plumbing | 56 | $28.25 | 7.5 | Active | |
| 29 | SKU-00029 | Material Item #29 | Electrical | 63 | $32.50 | 10.0 | Active | |
| 30 | SKU-00030 | Material Item #30 | Electronics | 70 | $36.75 | 0.0 | Pending | |
| 31 | SKU-00031 | Material Item #31 | Hardware | 77 | $41.00 | 2.5 | Active | |
| 32 | SKU-00032 | Material Item #32 | Lumber | 84 | $45.25 | 5.0 | Active | |
| 33 | SKU-00033 | Material Item #33 | Paint | 91 | $49.50 | 7.5 | Active | |
| 34 | SKU-00034 | Material Item #34 | Plumbing | 98 | $53.75 | 10.0 | Active | |
| 35 | SKU-00035 | Material Item #35 | Electrical | 105 | $58.00 | 0.0 | Active | |
| 36 | SKU-00036 | Material Item #36 | Electronics | 112 | $62.25 | 2.5 | Pending | |
| 37 | SKU-00037 | Material Item #37 | Hardware | 119 | $66.50 | 5.0 | Active | |
| 38 | SKU-00038 | Material Item #38 | Lumber | 126 | $70.75 | 7.5 | Active | |
| 39 | SKU-00039 | Material Item #39 | Paint | 133 | $75.00 | 10.0 | Active | |
| 40 | SKU-00040 | Material Item #40 | Plumbing | 140 | $79.25 | 0.0 | Active | |
| 41 | SKU-00041 | Material Item #41 | Electrical | 147 | $83.50 | 2.5 | Active | |
| 42 | SKU-00042 | Material Item #42 | Electronics | 154 | $87.75 | 5.0 | Pending | |
| 43 | SKU-00043 | Material Item #43 | Hardware | 11 | $92.00 | 7.5 | Active | |
| 44 | SKU-00044 | Material Item #44 | Lumber | 18 | $96.25 | 10.0 | Active | |
| 45 | SKU-00045 | Material Item #45 | Paint | 25 | $100.50 | 0.0 | Active | |
| 46 | SKU-00046 | Material Item #46 | Plumbing | 32 | $104.75 | 2.5 | Active | |
| 47 | SKU-00047 | Material Item #47 | Electrical | 39 | $109.00 | 5.0 | Active | |
| 48 | SKU-00048 | Material Item #48 | Electronics | 46 | $113.25 | 7.5 | Pending | |
| 49 | SKU-00049 | Material Item #49 | Hardware | 53 | $117.50 | 10.0 | Active | |
| 50 | SKU-00050 | Material Item #50 | Lumber | 60 | $15.50 | 0.0 | Active | |
| 51 | SKU-00051 | Material Item #51 | Paint | 67 | $19.75 | 2.5 | Active | |
| 52 | SKU-00052 | Material Item #52 | Plumbing | 74 | $24.00 | 5.0 | Active | |
| 53 | SKU-00053 | Material Item #53 | Electrical | 81 | $28.25 | 7.5 | Active | |
| 54 | SKU-00054 | Material Item #54 | Electronics | 88 | $32.50 | 10.0 | Pending | |
| 55 | SKU-00055 | Material Item #55 | Hardware | 95 | $36.75 | 0.0 | Active | |
| 56 | SKU-00056 | Material Item #56 | Lumber | 102 | $41.00 | 2.5 | Active | |
| 57 | SKU-00057 | Material Item #57 | Paint | 109 | $45.25 | 5.0 | Active | |
| 58 | SKU-00058 | Material Item #58 | Plumbing | 116 | $49.50 | 7.5 | Active | |
| 59 | SKU-00059 | Material Item #59 | Electrical | 123 | $53.75 | 10.0 | Active | |
| 60 | SKU-00060 | Material Item #60 | Electronics | 130 | $58.00 | 0.0 | Pending | |
| 61 | SKU-00061 | Material Item #61 | Hardware | 137 | $62.25 | 2.5 | Active | |
| 62 | SKU-00062 | Material Item #62 | Lumber | 144 | $66.50 | 5.0 | Active | |
| 63 | SKU-00063 | Material Item #63 | Paint | 151 | $70.75 | 7.5 | Active | |
| 64 | SKU-00064 | Material Item #64 | Plumbing | 158 | $75.00 | 10.0 | Active | |
| 65 | SKU-00065 | Material Item #65 | Electrical | 15 | $79.25 | 0.0 | Active | |
| 66 | SKU-00066 | Material Item #66 | Electronics | 22 | $83.50 | 2.5 | Pending | |
| 67 | SKU-00067 | Material Item #67 | Hardware | 29 | $87.75 | 5.0 | Active | |
| 68 | SKU-00068 | Material Item #68 | Lumber | 36 | $92.00 | 7.5 | Active | |
| 69 | SKU-00069 | Material Item #69 | Paint | 43 | $96.25 | 10.0 | Active | |
| 70 | SKU-00070 | Material Item #70 | Plumbing | 50 | $100.50 | 0.0 | Active | |
| 71 | SKU-00071 | Material Item #71 | Electrical | 57 | $104.75 | 2.5 | Active | |
| 72 | SKU-00072 | Material Item #72 | Electronics | 64 | $109.00 | 5.0 | Pending | |
| 73 | SKU-00073 | Material Item #73 | Hardware | 71 | $113.25 | 7.5 | Active | |
| 74 | SKU-00074 | Material Item #74 | Lumber | 78 | $117.50 | 10.0 | Active | |
| 75 | SKU-00075 | Material Item #75 | Paint | 85 | $15.50 | 0.0 | Active | |
| 76 | SKU-00076 | Material Item #76 | Plumbing | 92 | $19.75 | 2.5 | Active | |
| 77 | SKU-00077 | Material Item #77 | Electrical | 99 | $24.00 | 5.0 | Active | |
| 78 | SKU-00078 | Material Item #78 | Electronics | 106 | $28.25 | 7.5 | Pending | |
| 79 | SKU-00079 | Material Item #79 | Hardware | 113 | $32.50 | 10.0 | Active | |
| 80 | SKU-00080 | Material Item #80 | Lumber | 120 | $36.75 | 0.0 | Active | |
| 81 | SKU-00081 | Material Item #81 | Paint | 127 | $41.00 | 2.5 | Active | |
| 82 | SKU-00082 | Material Item #82 | Plumbing | 134 | $45.25 | 5.0 | Active | |
| 83 | SKU-00083 | Material Item #83 | Electrical | 141 | $49.50 | 7.5 | Active | |
| 84 | SKU-00084 | Material Item #84 | Electronics | 148 | $53.75 | 10.0 | Pending | |
| 85 | SKU-00085 | Material Item #85 | Hardware | 155 | $58.00 | 0.0 | Active | |
| 86 | SKU-00086 | Material Item #86 | Lumber | 12 | $62.25 | 2.5 | Active | |
| 87 | SKU-00087 | Material Item #87 | Paint | 19 | $66.50 | 5.0 | Active | |
| 88 | SKU-00088 | Material Item #88 | Plumbing | 26 | $70.75 | 7.5 | Active | |
| 89 | SKU-00089 | Material Item #89 | Electrical | 33 | $75.00 | 10.0 | Active | |
| 90 | SKU-00090 | Material Item #90 | Electronics | 40 | $79.25 | 0.0 | Pending | |
| 91 | SKU-00091 | Material Item #91 | Hardware | 47 | $83.50 | 2.5 | Active | |
| 92 | SKU-00092 | Material Item #92 | Lumber | 54 | $87.75 | 5.0 | Active | |
| 93 | SKU-00093 | Material Item #93 | Paint | 61 | $92.00 | 7.5 | Active | |
| 94 | SKU-00094 | Material Item #94 | Plumbing | 68 | $96.25 | 10.0 | Active | |
| 95 | SKU-00095 | Material Item #95 | Electrical | 75 | $100.50 | 0.0 | Active | |
| 96 | SKU-00096 | Material Item #96 | Electronics | 82 | $104.75 | 2.5 | Pending | |
| 97 | SKU-00097 | Material Item #97 | Hardware | 89 | $109.00 | 5.0 | Active | |
| 98 | SKU-00098 | Material Item #98 | Lumber | 96 | $113.25 | 7.5 | Active | |
| 99 | SKU-00099 | Material Item #99 | Paint | 103 | $117.50 | 10.0 | Active | |
| 100 | SKU-00100 | Material Item #100 | Plumbing | 110 | $15.50 | 0.0 | Active | |
| 101 | SKU-00101 | Material Item #101 | Electrical | 117 | $19.75 | 2.5 | Active | |
| 102 | SKU-00102 | Material Item #102 | Electronics | 124 | $24.00 | 5.0 | Pending | |
| 103 | SKU-00103 | Material Item #103 | Hardware | 131 | $28.25 | 7.5 | Active | |
| 104 | SKU-00104 | Material Item #104 | Lumber | 138 | $32.50 | 10.0 | Active | |
| 105 | SKU-00105 | Material Item #105 | Paint | 145 | $36.75 | 0.0 | Active | |
| 106 | SKU-00106 | Material Item #106 | Plumbing | 152 | $41.00 | 2.5 | Active | |
| 107 | SKU-00107 | Material Item #107 | Electrical | 159 | $45.25 | 5.0 | Active | |
| 108 | SKU-00108 | Material Item #108 | Electronics | 16 | $49.50 | 7.5 | Pending | |
| 109 | SKU-00109 | Material Item #109 | Hardware | 23 | $53.75 | 10.0 | Active | |
| 110 | SKU-00110 | Material Item #110 | Lumber | 30 | $58.00 | 0.0 | Active | |
| 111 | SKU-00111 | Material Item #111 | Paint | 37 | $62.25 | 2.5 | Active | |
| 112 | SKU-00112 | Material Item #112 | Plumbing | 44 | $66.50 | 5.0 | Active | |
| 113 | SKU-00113 | Material Item #113 | Electrical | 51 | $70.75 | 7.5 | Active | |
| 114 | SKU-00114 | Material Item #114 | Electronics | 58 | $75.00 | 10.0 | Pending | |
| 115 | SKU-00115 | Material Item #115 | Hardware | 65 | $79.25 | 0.0 | Active | |
| 116 | SKU-00116 | Material Item #116 | Lumber | 72 | $83.50 | 2.5 | Active | |
| 117 | SKU-00117 | Material Item #117 | Paint | 79 | $87.75 | 5.0 | Active | |
| 118 | SKU-00118 | Material Item #118 | Plumbing | 86 | $92.00 | 7.5 | Active | |
| 119 | SKU-00119 | Material Item #119 | Electrical | 93 | $96.25 | 10.0 | Active | |
| 120 | SKU-00120 | Material Item #120 | Electronics | 100 | $100.50 | 0.0 | Pending | |
| 121 | SKU-00121 | Material Item #121 | Hardware | 107 | $104.75 | 2.5 | Active | |
| 122 | SKU-00122 | Material Item #122 | Lumber | 114 | $109.00 | 5.0 | Active | |
| 123 | SKU-00123 | Material Item #123 | Paint | 121 | $113.25 | 7.5 | Active | |
| 124 | SKU-00124 | Material Item #124 | Plumbing | 128 | $117.50 | 10.0 | Active | |
| 125 | SKU-00125 | Material Item #125 | Electrical | 135 | $15.50 | 0.0 | Active | |
| 126 | SKU-00126 | Material Item #126 | Electronics | 142 | $19.75 | 2.5 | Pending | |
| 127 | SKU-00127 | Material Item #127 | Hardware | 149 | $24.00 | 5.0 | Active | |
| 128 | SKU-00128 | Material Item #128 | Lumber | 156 | $28.25 | 7.5 | Active | |
| 129 | SKU-00129 | Material Item #129 | Paint | 13 | $32.50 | 10.0 | Active | |
| 130 | SKU-00130 | Material Item #130 | Plumbing | 20 | $36.75 | 0.0 | Active | |
| 131 | SKU-00131 | Material Item #131 | Electrical | 27 | $41.00 | 2.5 | Active | |
| 132 | SKU-00132 | Material Item #132 | Electronics | 34 | $45.25 | 5.0 | Pending | |
| 133 | SKU-00133 | Material Item #133 | Hardware | 41 | $49.50 | 7.5 | Active | |
| 134 | SKU-00134 | Material Item #134 | Lumber | 48 | $53.75 | 10.0 | Active | |
| 135 | SKU-00135 | Material Item #135 | Paint | 55 | $58.00 | 0.0 | Active | |
| 136 | SKU-00136 | Material Item #136 | Plumbing | 62 | $62.25 | 2.5 | Active | |
| 137 | SKU-00137 | Material Item #137 | Electrical | 69 | $66.50 | 5.0 | Active | |
| 138 | SKU-00138 | Material Item #138 | Electronics | 76 | $70.75 | 7.5 | Pending | |
| 139 | SKU-00139 | Material Item #139 | Hardware | 83 | $75.00 | 10.0 | Active | |
| 140 | SKU-00140 | Material Item #140 | Lumber | 90 | $79.25 | 0.0 | Active | |
| 141 | SKU-00141 | Material Item #141 | Paint | 97 | $83.50 | 2.5 | Active | |
| 142 | SKU-00142 | Material Item #142 | Plumbing | 104 | $87.75 | 5.0 | Active | |
| 143 | SKU-00143 | Material Item #143 | Electrical | 111 | $92.00 | 7.5 | Active | |
| 144 | SKU-00144 | Material Item #144 | Electronics | 118 | $96.25 | 10.0 | Pending | |
| 145 | SKU-00145 | Material Item #145 | Hardware | 125 | $100.50 | 0.0 | Active | |
| 146 | SKU-00146 | Material Item #146 | Lumber | 132 | $104.75 | 2.5 | Active | |
| 147 | SKU-00147 | Material Item #147 | Paint | 139 | $109.00 | 5.0 | Active | |
| 148 | SKU-00148 | Material Item #148 | Plumbing | 146 | $113.25 | 7.5 | Active | |
| 149 | SKU-00149 | Material Item #149 | Electrical | 153 | $117.50 | 10.0 | Active | |
| 150 | SKU-00150 | Material Item #150 | Electronics | 10 | $15.50 | 0.0 | Pending | |
| 151 | SKU-00151 | Material Item #151 | Hardware | 17 | $19.75 | 2.5 | Active | |
| 152 | SKU-00152 | Material Item #152 | Lumber | 24 | $24.00 | 5.0 | Active | |
| 153 | SKU-00153 | Material Item #153 | Paint | 31 | $28.25 | 7.5 | Active | |
| 154 | SKU-00154 | Material Item #154 | Plumbing | 38 | $32.50 | 10.0 | Active | |
| 155 | SKU-00155 | Material Item #155 | Electrical | 45 | $36.75 | 0.0 | Active | |
| 156 | SKU-00156 | Material Item #156 | Electronics | 52 | $41.00 | 2.5 | Pending | |
| 157 | SKU-00157 | Material Item #157 | Hardware | 59 | $45.25 | 5.0 | Active | |
| 158 | SKU-00158 | Material Item #158 | Lumber | 66 | $49.50 | 7.5 | Active | |
| 159 | SKU-00159 | Material Item #159 | Paint | 73 | $53.75 | 10.0 | Active | |
| 160 | SKU-00160 | Material Item #160 | Plumbing | 80 | $58.00 | 0.0 | Active | |
| 161 | SKU-00161 | Material Item #161 | Electrical | 87 | $62.25 | 2.5 | Active | |
| 162 | SKU-00162 | Material Item #162 | Electronics | 94 | $66.50 | 5.0 | Pending | |
| 163 | SKU-00163 | Material Item #163 | Hardware | 101 | $70.75 | 7.5 | Active | |
| 164 | SKU-00164 | Material Item #164 | Lumber | 108 | $75.00 | 10.0 | Active | |
| 165 | SKU-00165 | Material Item #165 | Paint | 115 | $79.25 | 0.0 | Active | |
| 166 | SKU-00166 | Material Item #166 | Plumbing | 122 | $83.50 | 2.5 | Active | |
| 167 | SKU-00167 | Material Item #167 | Electrical | 129 | $87.75 | 5.0 | Active | |
| 168 | SKU-00168 | Material Item #168 | Electronics | 136 | $92.00 | 7.5 | Pending | |
| 169 | SKU-00169 | Material Item #169 | Hardware | 143 | $96.25 | 10.0 | Active | |
| 170 | SKU-00170 | Material Item #170 | Lumber | 150 | $100.50 | 0.0 | Active | |
| 171 | SKU-00171 | Material Item #171 | Paint | 157 | $104.75 | 2.5 | Active | |
| 172 | SKU-00172 | Material Item #172 | Plumbing | 14 | $109.00 | 5.0 | Active | |
| 173 | SKU-00173 | Material Item #173 | Electrical | 21 | $113.25 | 7.5 | Active | |
| 174 | SKU-00174 | Material Item #174 | Electronics | 28 | $117.50 | 10.0 | Pending | |
| 175 | SKU-00175 | Material Item #175 | Hardware | 35 | $15.50 | 0.0 | Active | |
| 176 | SKU-00176 | Material Item #176 | Lumber | 42 | $19.75 | 2.5 | Active | |
| 177 | SKU-00177 | Material Item #177 | Paint | 49 | $24.00 | 5.0 | Active | |
| 178 | SKU-00178 | Material Item #178 | Plumbing | 56 | $28.25 | 7.5 | Active | |
| 179 | SKU-00179 | Material Item #179 | Electrical | 63 | $32.50 | 10.0 | Active | |
| 180 | SKU-00180 | Material Item #180 | Electronics | 70 | $36.75 | 0.0 | Pending | |
200 rows
#Columns from data annotations
No column markup: the grid builds its columns from the attributes on AnnotatedGridItem. Display gives Item #, SKU, Unit price and Extended their headers, order and bands; DisplayName labels the description; DisplayFormat formats the money; Key and Editable(false) keep Item # and Extended read-only; AutoGenerateField = false hides InternalCode.
| Identity | Amounts | |||
|---|---|---|---|---|
| Item # | SKU | Unit price | Extended | Product description |
| 1 | SKU-00001 | $19.75 | $335.75 | Material Item #1 |
| 2 | SKU-00002 | $24.00 | $576.00 | Material Item #2 |
| 3 | SKU-00003 | $28.25 | $875.75 | Material Item #3 |
| 4 | SKU-00004 | $32.50 | $1,235.00 | Material Item #4 |
| 5 | SKU-00005 | $36.75 | $1,653.75 | Material Item #5 |
| 6 | SKU-00006 | $41.00 | $2,132.00 | Material Item #6 |
| 7 | SKU-00007 | $45.25 | $2,669.75 | Material Item #7 |
| 8 | SKU-00008 | $49.50 | $3,267.00 | Material Item #8 |
| 9 | SKU-00009 | $53.75 | $3,923.75 | Material Item #9 |
| 10 | SKU-00010 | $58.00 | $4,640.00 | Material Item #10 |
| 11 | SKU-00011 | $62.25 | $5,415.75 | Material Item #11 |
| 12 | SKU-00012 | $66.50 | $6,251.00 | Material Item #12 |
Documentation
GridColumn parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
IsFrozen | bool | false | Pins the column while the others scroll. The cell is position: sticky, offset by the summed widths of the frozen columns before it on the same edge (a column without a declared width counts as 120px). A lock set from the header menu overrides the declared value at runtime. |
FrozenPosition | FrozenColumnPosition | FrozenColumnPosition.Left | The edge a frozen column sticks to, Left or Right. Ignored while IsFrozen is off. |
HeaderBand | string? | null | Name of the band above this column; adjacent visible columns with the same name share one spanning cell. A ColumnHeaderBands entry that lists the field wins over this. |
AllowEditing | bool | true | Whether this column's cells open an editor when the grid's EditSettings allow editing. Auto-generated columns set it from the property. |
GridControl parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
ColumnHeaderBands | IReadOnlyList<GridColumnHeaderBand>? | null | Band descriptors for the extra header row. Fields match case-insensitively; a band whose columns are separated by reordering or by a frozen edge renders one cell per contiguous run; columns in no band get an empty cell. |
AutoGenerateColumns | bool | false | Builds one column per public readable property of TValue, as listed below. An explicit GridColumn with the same Field replaces the generated one; extra explicit columns follow the generated set. |
EditSettingsRef | EditSettings? | null | The grid's editing settings, a plain object rather than a component. This page sets AllowEditing and Mode = EditMode.Batch. |
GridColumnHeaderBand
| Property | Type | Default | Description |
|---|---|---|---|
HeaderText | string | string.Empty | Caption of the spanning cell, also shown as its tooltip. |
Fields | IReadOnlyList<string> | Array.Empty<string>() | Fields of the columns the band owns, matched case-insensitively. |
HeaderTemplate | RenderFragment? | null | Custom content for the band cell instead of the caption. |
CssClass | string? | null | Appended to the band cell's class. |
TextAlign | TextAlign | TextAlign.Center | Alignment of the caption. |
EditSettings, the two used here
| Property | Type | Default | Description |
|---|---|---|---|
AllowEditing | bool | false | Master switch. Off, no cell opens an editor whatever the columns say. |
Mode | EditMode | EditMode.Inline | Inline edits a whole row, Dialog opens a form, Batch edits cell by cell as on this page: double-click or Enter opens the editor, Tab commits and moves on, Escape abandons. |
The rest of EditSettings (adding, deleting, the confirm dialog, new-row position, click-to-edit) belongs with
Batch editing. Frozen cells carry no class: the pinning is inline style on the cell.
The band row is fx-column-header-band-row; each band is a fx-column-header-band-cell, with
fx-column-header-band-empty on the gaps above columns in no band.
What AutoGenerateColumns reads from the row type
- Which properties: public instance properties with a public getter and no indexer.
[Display(AutoGenerateField = false)]or[ScaffoldColumn(false)]leaves one out. A scalar row type such asstringorintgenerates nothing. - Order:
Display.Order, then declaration order. - Header:
Display.Name, else[DisplayName], else the property name.Display.GroupNamebecomes the column'sHeaderBand. - Format:
DisplayFormat.DataFormatStringwith the{0:…}wrapper removed, so{0:C2}becomesC2. - Read-only:
[Key](which also setsIsPrimaryKey),[Editable(false)],[ReadOnly(true)], or no public setter. - Type:
[DataType(DataType.Password)]gives Password; a DataType of Date, DateTime or Time gives Date;boolgives CheckBox;DateTime,DateTimeOffsetandDateOnlygive Date; the numeric types give Number; everything else is Text. Numbers and dates align right, check boxes centre.