Hello guys,
I have a big problem.
I'm building a new project where is important to create a data table
starting from a
configuration file, so I tryed to use a DataTable component because each
data have different name (column) and if a different type (typeof) like byte,
UInt16, etc.
At the end of the configuration in my public dt I create a row, row[0] and
this is already to write and read new data.
Application is strongly connected with a communication protocol (CAN BUS)
where the data just tabled must be read or write, half & half, with a sync
time of 2ms.
I tryed to do it, just one data for check:
dt.Rows[0][@"PositionActualValue_Axe00"] = ppp++;"
this is in the communication sync thread. Application performances decline !!!
If I renunce at dynamic list building I could prepare an array with fixed
dimension,
for example 4096 Uint32 to exchange with field the data. Why ??
If I use a property value with same intentions of the dt to get it in my
finally
application in to a binding source that is very fast and the
"NotifyPropertyChanged(@"PositionActualValue_Axe00");" is perfect, I tryed to
exchange one data and working good, but I don't how to
transform a list like this:
private UInt32[] mProvaBinding = new UInt32[4096];
public UInt32 [] ProvaBinding
{
get
{
return mProvaBinding;
throw new System.NotImplementedException();
}
set
{
mProvaBinding = value;
NotifyPropertyChanged(@"ProvaBinding");
}
}
to a declaration for my final application where:
[final appl]
bindingSource1.Add(c1000_000_011); //object source declaration
axe_000.DataBindings.Add(@"Rp", bindingSource1, @"ProvaBinding[0]");
//property: how call right index
axe_001.DataBindings.Add(@"Rp", bindingSource1, @"ProvaBinding[1]");
axe_002.DataBindings.Add(@"Rp", bindingSource1, @"ProvaBinding[2]");
this declaration doesn't work!!!
Someone can open my mind.
Thanks fabbrit