У меня есть GV (который я заполняю через код), в котором я хочу обновить элементы строки, в которой я выбрал.
Вот что я заполняю в моем GView:
var td = from s in GetEntity()
join r in GetPlanName() on s.Product_ID equals r.Product_ID
where s.Entity_ID == getEntity
select new
{
s.Product_ID,
r.PlanName,
s.HiCommissionOld,
s.LowCommissionOld
};
gvShowComm.DataSource = td;
gvShowComm.DataBind();
Вот наценка моего GV:
<asp:GridView runat="server" Height="233px" Width="602px" ID ="gvShowComm"
CellPadding="4" ForeColor="#333333" GridLines="None"
EnableViewState="False" OnRowEditing = "gvShowComm_RowEditing"
OnRowUpdating = "gvShowComm_RowUpdating"
OnRowCancelingEdit = "gvShowComm_RowCancelingEdit"
DataKeyNames = "Product_ID" >
<Columns>
<asp:CommandField ShowCancelButton="True" ShowEditButton="True" />
</Columns>
</asp:GridView>
А вот мой код:
protected void gvShowComm_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
int index = gvShowComm.EditIndex;
GridViewRow row = gvShowComm.Rows[index];
string name = row.Cells[2].Text; //name is empty!
}
Итак, вот моя проблема: я могу получить доступ к одному столбцу через свойство DataKeyNames в моем теге GView, но мне нужно получить доступ к другим элементам, чтобы ОБНОВИТЬ мой Grid View через LINQ в коде позади. Причина, по которой я НЕ использую LDS, потому что я обновляю таблицы из 2 разных баз данных.
Спасибо!