2016-02-09 3 views
0

Мне нужно получить значения gridview каждой ячейки каждой строки в качестве переменных, которые отображаются с помощью webusercontrol на веб-форме в asp.net
я попытался это, но он не работает,получить данные gridview каждой ячейки каждой строки в качестве переменных из webusercontrol в webform в asp.net

Control control1 = null; 
GridView GridView1 = (GridView)this.FindControl("GridView"); 

foreach (GridViewRow row1 in GridView1.Rows) 
{ 
    control1 = GridView1.Controls[0].Controls[0]; 
    string Price = (control1.FindControl("Price") as Label).Text; 
    string Quantity = (control1.FindControl("Quantity") as Label).Text; 
} 

ответ

1

вы уже зацикливание все GridViewRows, эти элементы управления, которые являются NamingContainers ваших меток в ItemTemplate которые вы можете найти с row.FindControl:

foreach (GridViewRow row in GridView1.Rows) 
{ 
    Label lblPrice = (Label)row.FindControl("Price"); 
    string Price = lblPrice.Text; 
    Label lblQuantity = (Label)row.FindControl("Quantity"); 
    string Quantity = lblQuantity.Text; 
} 
+0

На самом деле мне нужно получить его от веб-пользователя, GridView GridView1 = (GridView) this.FindControl («GridView»); Правильно ли это? –

+0

@HimadriVarshney: нет, почему бы вам не получить доступ к «GridView» напрямую? 'GridView GridView1 = this.GridView'? Смешение. Но вопрос был о цикле и о том, как вы пытаетесь найти свои ярлыки, которые, конечно, не работают так или, по крайней мере, очень странно. Какая ошибка вы получаете и где? –

+0

Я не могу использовать его напрямую, потому что gridview находится в веб-пользовательском элементе управления, и я должен использовать его в другой веб-форме. –

Смежные вопросы