在對一個ObjectDataSource定期FormView控件更新命令更改提取的值,我們定義的方法的更新事件將值添加到正在編輯的項目,像這樣:radgrid控件:在自動更新
protected void MyFormView_ItemUpdating(object sender, FormViewUpdateEventArgs e)
{
RadComboBox countriesCombo =
(RadComboBox)MyFormView.FindControl("CountryRadComboBox");
// this should never be null, other wise, error is shown
if (!string.IsNullOrEmpty(countriesCombo.SelectedValue))
e.NewValues["CountryId"] = countriesCombo.SelectedValue;
在RadGrid中,我使用的是編輯表單。插入是偉大的工作把這個代碼在PerformInsert事件方法:
GridEditFormInsertItem gridItem = (GridEditFormInsertItem)e.Item.OwnerTableView.GetInsertItem();
Hashtable values = new Hashtable();
gridItem.ExtractValues(values);
values["ReferenceId"] = 0;
RadComboBox comboCountries = (RadComboBox)gridItem.FindControl("CountryRadComboBox");
values["CountryID"] = comboCountries.SelectedValue;
e.Item.OwnerTableView.InsertItem(values);
然而,試圖做的編輯一樣是不是爲我工作。這是我無法做到的最後一步。一旦我使用組合中的值更改散列表值,我該如何指示它必須使用這些值?
在telerik示例中,他們使用從數據源獲取的DataTable進行工作,然後映射並執行代碼中的更新....不想這樣做,我會喜歡它會以相同的方式工作插入。對於我不需要更改散列表中的任何值的情況,它可以很好地工作,更新正在工作。
任何幫助表示讚賞 弗拉基米爾
我假設你正在使用他們的AUTOMAGIC更新,與頁面上的'SqlDataSource'控制? – 2012-03-28 14:56:17
我正在使用已聲明的InsertMethod,UpdateMethod,DeleteMethod和SelectMethod的ObjectDataSource。這個objectdatasource是我的RadGrid的數據源。 – Vladimir 2012-03-28 23:25:45