Обновление GridView через код позади - PullRequest
0 голосов
/ 08 апреля 2011

У меня есть 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 разных баз данных.

Спасибо!

1 Ответ

0 голосов
/ 08 апреля 2011

Вы можете получить доступ к другим ячейкам в строке, как это. посмотрите на эту ссылку для более подробной информации.

gvShowComm.Rows[e.RowIndex].Cells[index]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...