Получение данных gridview со страницы содержимого на главную страницу
Я не получаю данные GridView страницы содержимого для нажатия кнопки страницы site.master.cs.
Я хочу получить доступ к данным GridView страницы содержимого aspx на главную страницу.. как я могу это сделать?
пожалуйста, помогите мне..
Что я уже пробовал:
Я попробовал на странице site.master.cs ..
GridView grvOrganizer = (GridView)ContentPlaceHolder1.FindControl("grdOrganizer"); DataTable dtOrganizerUser = new DataTable(); dtOrganizerUser = new DataTable("user"); dtOrganizerUser.Columns.Add(new DataColumn("ID", typeof(int))); dtOrganizerUser.Columns.Add(new DataColumn("hdID", typeof(int))); dtOrganizerUser.Columns.Add(new DataColumn("organizerName", typeof(string))); dtOrganizerUser.Columns.Add(new DataColumn("Image", typeof(string))); dtOrganizerUser.Columns.Add(new DataColumn("AboutOrganizer", typeof(string))); foreach (GridViewRow row in grvOrganizer.Rows) { DataRow dtORow = dtOrganizerUser.NewRow(); DataRow dtSRow = dtSpeakerUser.NewRow(); //Session["ID"] = item.ProductUserID; //dtORow["ID"] = item.ProductUserID; // dtORow["hdID"] = Convert.ToInt32( grvOrganizer.Rows[0].Cells[0].Text); dtORow["organizerName"] =row.Cells[1].Text; //dtORow["Image"] = grvOrganizer.Rows[0].Cells[2].Text; dtORow["AboutOrganizer"] = grvOrganizer.Rows[0].Cells[3].Text; dtOrganizerUser.Rows.Add(dtORow); }
sameer549
вы получаете какие-нибудь исключения ?
использовали ли вы какие-либо шаблоны элементов при проектировании gridview ?
heta.dave
Я не получаю данные на странице cs..
мой gridview выглядит следующим образом:
&ЛТ;в ASP:GridView в атрибут runat="сервер" идентификатор="grdOrganizer" AutoGenerateColumns="false" - в CssClass="таблица" OnRowCommand="grdOrganizer_RowCommand"&ГТ;
& lt;колонки>
<asp:TemplateField HeaderText= "ID">
& lt;itemtemplate>
&ЛТ;АСП:метка идентификатор="lblID" атрибут runat="сервер" текст=в'<%#Ивала("идентификатор") %&ГТ; в'>
&ЛТ;как ASP:HiddenField идентификатор="hdOrgId" атрибут runat="сервер" значение=в'<%#Ивала("hdID") %&ГТ; в'>
<asp:TemplateField HeaderText= "имя организатора" >
& lt;itemtemplate>
&ЛТ;АСП:метка идентификатор="lblname" атрибут runat="сервер" текст=в'<%#Ивала("organizerName") %&ГТ; в'>
<asp:TemplateField HeaderText= "Image">
& lt;itemtemplate>
<asp:TemplateField HeaderText= "об организаторе" >
& lt;itemtemplate>
&ЛТ;АСП:метка идентификатор="lblAboutOrganizer" атрибут runat="сервер" текст=в'<%#Ивала("AboutOrganizer") %&ГТ; в'>
<asp:TemplateField HeaderText= "удалить">
& lt;itemtemplate>
&ЛТ;как ASP:LinkButton элемент ID="lnkDelete" CommandArgument='&л;%#Ивала("код") + "," + оценки("hdID") %&ГТ;' Имя_команды="вызова метода deleterow" атрибут runat="сервер" текст="удалить"и GT;
sameer549
если вы используете шаблоны элементов, то сначала вам нужно получить доступ к элементу управления из строки gridview, а затем вы можете получить доступ к тексту конкретного элемента управления.
например,
Метки lblID = (лейбл)гв.Строки[индекс].ячейки[0].FindControl("lblID");
строковое значение = lblID. Text;
heta.dave
можно ли получить текст управления элементом с главной страницы?
sameer549
да, прочтите мой вышеприведенный комментарий должным образом, в вашем c#,
Шаг 1: доступ к gridview с главной страницы
Шаг 2: Цикл по строкам gridview
Шаг 3: во время цикла найдите любые элементы управления (label/textbox/linkbutton) из строки gridview, а затем вы можете получить свойства/значения из этого элемента управления
heta.dave
хорошо, спасибо за помощь..
Richard Deeming
Наличие кода на главной странице, зависящего от элементов управления на странице содержимого,-это запах кода. Что-то серьезно не так с вашим дизайном.
sameer549
да ты прав Ричард