Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ this[DataColumn column]

object System.Data.DataRow.this[DataColumn column]
getset

Definition at line 203 of file DataRow.cs.

204 {
205 get
206 {
209 return column[defaultRecord];
210 }
212 set
213 {
216 {
217 throw ExceptionBuilder.EditInRowChanging();
218 }
219 if (-1 != rowID && column.ReadOnly)
220 {
221 throw ExceptionBuilder.ReadOnly(column.ColumnName);
222 }
223 DataColumnChangeEventArgs dataColumnChangeEventArgs = null;
225 {
226 dataColumnChangeEventArgs = new DataColumnChangeEventArgs(this, column, value);
228 }
229 if (column.Table != _table)
230 {
231 throw ExceptionBuilder.ColumnNotInTheTable(column.ColumnName, _table.TableName);
232 }
233 if (-1 != rowID && column.ReadOnly)
234 {
235 throw ExceptionBuilder.ReadOnly(column.ColumnName);
236 }
237 object obj = ((dataColumnChangeEventArgs != null) ? dataColumnChangeEventArgs.ProposedValue : value);
238 if (obj == null)
239 {
240 if (column.IsValueType)
241 {
242 throw ExceptionBuilder.CannotSetToNull(column);
243 }
244 obj = DBNull.Value;
245 }
246 bool flag = BeginEditInternal();
247 try
248 {
251 }
252 catch (Exception e) when (ADP.IsCatchableOrSecurityExceptionType(e))
253 {
254 if (flag)
255 {
256 CancelEdit();
257 }
258 throw;
259 }
261 if (dataColumnChangeEventArgs != null)
262 {
264 }
265 if (flag)
266 {
267 EndEdit();
268 }
269 }
270 }
static bool IsCatchableOrSecurityExceptionType(Exception e)
Definition ADP.cs:800
bool BeginEditInternal()
Definition DataRow.cs:500
DataColumn? LastChangedColumn
Definition DataRow.cs:59
int GetProposedRecordNo()
Definition DataRow.cs:854
readonly DataTable _table
Definition DataRow.cs:12
void CheckColumn(DataColumn column)
Definition DataRow.cs:534
virtual void OnColumnChanged(DataColumnChangeEventArgs e)
virtual void OnColumnChanging(DataColumnChangeEventArgs e)