Здравствуйте, Dr_Sh0ck, Вы писали:
D_S>Здравствуйте, Mur, Вы писали:
Mur>>Люди добрые!
Mur>>У меня есть таблица с данными (DataGrid)
Mur>>её надо обновлять полностью новыми данными
Mur>>но старые никак не хотят прекратить отображаться и освободить место для новых
Mur>>я нажимаю на кнопку, вызывающую обновление, запускается функция CreateDataSource() для получения новых значений, затем DataBind(). Где и как убить старьё, никто не подскажет?
D_S>Если грид привязан к датасету, то myDataSet.Tables.Clear(), если не к датасету — по аналогии
Вот что у меня есть:
Collection CreateDataSource(int perem)
{
int Myp = perem;
textbox1.Text = Myp.ToString();
dt = new DataTable();
DataRow dr;
dv = new DataView();
dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
dt.Columns.Add(new DataColumn("Url", typeof(string)));
dt.Columns.Add(new DataColumn("Properties", typeof(string)));
int pCopy = Myp;
int pCopy2 = Myp;
for (int i = pCopy; i<pCopy+param; i++)
{
dr = dt.NewRow();
dr[0] = pCopy2+1;
dr[1] = "<A HREF="+docs[pCopy2].url+">Redirect to document</A>";
NameValuePair[] prop = docs[pCopy2].properties;
int l = prop.Length;
for (int j=0; j<l; j++)
{
dr[2]+= prop[j].name + ": " + prop[j].value + " "+p.ToString()+" "+param.ToString()+"; " ;
}
dt.Rows.Add(dr);
pCopy2++;
}
dv = new DataView(dt);
return dv;
}
void but1_Click(object sender, System.EventArgs e)
{
p+=param;
ItemsGrid.DataSource = CreateDataSource(p);
ItemsGrid.DataBind();
}