با عرض سلام خدمت دوستان
من یک دیتاگرید داینامیک دارم (یعنی در زمان اجرا سطر و ستون هاش کم و زیاد میشه) و قبل از اجرا هم مقدار و تعداد سطر و ستون هاش مشخص نیست . حالا توی این سناریو به نظرتون من چطوری میتونم مثلا یه مقدار به ستون a1 اضافه کنم؟


پ.نوشت : کاری که خودم انجام دادم با استفاده از binding :

public class mydata
{
public ObservableCollection<mydata1> cname { get; set; }
public mydata()
{
this.cname = new ObservableCollection<mydata1>();
}
}
public class mydata1
{
private string myValue;
public string MyValue
{
get { return myValue; }
set { myValue = value; }//<-- set breakpoint here to see that edit is working
}
}



static mydata m = new mydata();

public static void row_add(string column,string item)
{
ObservableCollection<mydata> MyList = new ObservableCollection<mydata>();
try
{
foreach (DataGridTextColumn dgt in lockdisplay.dataGrid1.Columns)
{


if ((string)dgt.Header==column)
{
if (dgt.Binding == null)
{


dgt.Binding = new Binding(string.Format("cname[{0}].MyValue", n++));
m.cname.Add(new mydata1() { MyValue = item });
}
else
{


}
lockdisplay.dataGrid1.Items.Add(m);





}
}


همونطور که میبینید کد بالا درست عمل نمیکنه ، یعنی وقتی مثلا میخوام یه مقدار به ستون A1 اضافه کنم اضافه میشه و درسته اما وقتی میخوام یه مقدار دیگه به ستون A2 اضافه کنم دوباره همون مقدار قبلی هم به A1 اضافه میشه. در واقع نمیدونم چطوری تفکیک قائل بشم که توی add کردن فقط همون مقدار A2 رو اضافه کنه .

از اساتید محترم ممنون میشم راهنمایی بفرمایند .

با تشکر از محبتتان