Здравствуйте, chorn, Вы писали:
C>Здравствуйте, mogadanez, Вы писали:
M>>Здравствуйте, chorn, Вы писали:
C>>>Есть DataGrid с колонкой кнопок. При нажатии на кнопку необходимо удалить из DataSet соответствующую запись. При этом апдейт базы я не делаю, для того чтобы после удаления нескольких строк из DataSet была возможность отменить удаление. Проблема в том, что при удалении одной строки из DataSet (и,соответственно, возврате формы), появляется ранее удаленная строка. Подскажите пожалуйста как это делается.
C>>>Код удаления строки (в обработчике нажатия кнопки):
C>>>C>>>DataRow[] rows = this.myDataSet.Select("ID="+e.Item.Cells[0].Text);
C>>>foreach (DataRow row in rows)
C>>>{
C>>> row.Delete();
C>>>}
C>>>this.myDataGrid.DataSource=this.myDataSet; this.myDataGrid.DataBind();
C>>>
M>>так а myDataSet ты где хранишь? при каждом постбеке загружаешь?
C>myDataSet у меня мембер класса, загружаю его один раз:
C>
C>private void Page_Load(object sender, System.EventArgs e)
C>{
C> if!IsPostBack)
C> {
C> myAdapter = new OracleDataAdapter("select * from MyTable",strConnect);
C> this.myDataSet = new DataSet();
C> myAdapter.Fill(this.myDataSet);
C> this.myDataGrid.DataSource=this.myDataSet;
C> this.myDataGrid.DataBind();
C> }
C>}
C>
стоп.... а между постбеками где он у тебя сохраняется??
из того кода что ты привел, после постбека myDataSet дожен быть равен null
... << RSDN@Home 1.1 beta 2 >>