Member 13419308 Ответов: 1

Передача выбранных строк из одной таблицы в другую в следующей странице на btnclick эвнет


передача выбранных строк из одной таблицы в другую в следующей странице на btnclick эвнет

Что я уже пробовал:

передача выбранных строк из одной таблицы в другую в следующей странице на btnclick эвнет

Karthik_Mahalingam

выложите код, что вы уже пробовали?
это строки только для чтения или содержит столбцы шаблона?

[no name]

&ЛТ;АСП:таблицы с ID="gridview1, на" атрибут runat="сервер" AutoGenerateColumns="ложных" Высота="310px" стиль="маржи-право: 56px" ширина="704px"&ГТ;
& lt;столбцы>
<asp:templatefield HeaderText= "Select">
& lt;itemtemplate>
< asp:checkbox ID= " cbSelect"
CssClass=" gridCB "runat=" сервер " >


&ЛТ;как ASP:BoundField datafield в="заголовок" HeaderText="название" /&ГТ;
<asp:BoundField DataField=" Date "HeaderText= "Date" />
&ЛТ;как ASP:BoundField datafield в="событий" HeaderText="события" /&ГТ;










protected void Page_Load(отправитель объекта, EventArgs e)
{
Веб-объекты spweb = SPContext.Тока.Сеть;
SPList list = web. Lists ["список выбора событий календаря"];
SPListItemCollection items = список.Предметы;
Управления gridview1.Источник данных = вещи.GetDataTable();
Управления gridview1.Привязку();
}
дизайн и cs-код, который я приложил, пожалуйста, предоставьте код так, чтобы при выборе этого флажка и нажатии на кнопку я получал только выбранные строки, отображаемые в отдельном виде сетки на другой странице sharepoint

Karthik_Mahalingam

как выглядит gridview на другой странице

[no name]

я сделал только до этого

GKP1992

Вы можете попробовать выбрать столбец в вашем наборе данных, установив для него значение true в javascript при выборе. Затем перейдите на следующую страницу (или в любое другое место, которое вы хотите, в зависимости от доступности вашего набора данных).

[no name]

поскольку я новичок в этом деле, можете ли вы вести меня поэтапно

1 Ответов

Рейтинг:
6

Karthik_Mahalingam

пробовать
Страница 1

<form id="form1" runat="server">

       <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" Height="310px" Style="margin-right: 56px" Width="704px">
           <Columns>
               <asp:TemplateField HeaderText="Select">
                   <ItemTemplate>
                       <asp:CheckBox ID="cbSelect"
                           CssClass="gridCB" runat="server"></asp:CheckBox>

                   </ItemTemplate>
               </asp:TemplateField>

               <asp:BoundField DataField="Title" HeaderText="Title" />
               <asp:BoundField DataField="Date" HeaderText="Date" />
               <asp:BoundField DataField="events" HeaderText="events" />
           </Columns>
       </asp:GridView>
       <asp:Button ID="btnCopy" runat="server" Text="Copy Rows" OnClick="btnCopy_Click" />

   </form>


public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                SPWeb web = SPContext.Current.Web;
                SPList list = web.Lists["Calender event selection list"];
                SPListItemCollection items = list.Items;
                GridView1.DataSource = items.GetDataTable();
                GridView1.DataBind();
            }
        }

      

        protected void btnCopy_Click(object sender, EventArgs e)
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("Title");
            dt.Columns.Add("Date");
            dt.Columns.Add("events");

            foreach (GridViewRow row in GridView1.Rows)
                if (((CheckBox)row.Cells[0].FindControl("cbSelect")).Checked)
                    dt.Rows.Add(row.Cells[1].Text, row.Cells[2].Text, row.Cells[3].Text);

            Session["Data"] = dt;
            Response.Redirect("WebForm2.aspx");
        }
    }


Страница 2

<form id="form1" runat="server">
   <div>

       <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" Height="310px" Style="margin-right: 56px" Width="704px">
           <Columns>
               <asp:BoundField DataField="Title" HeaderText="Title" />
               <asp:BoundField DataField="Date" HeaderText="Date" />
               <asp:BoundField DataField="events" HeaderText="events" />
           </Columns>
       </asp:GridView>
   </div>
   </form>


 public partial class WebForm2 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack) {
                DataTable dt = (DataTable)Session["Data"];
                GridView1.DataSource = dt;
                GridView1.DataBind();
            }

        }
    }
}


[no name]

спасибо, но не могли бы вы сказать мне, куда вставить этот код, когда я разрабатываю визуальное решение webpart

Karthik_Mahalingam

добавьте в файл ascx и cs

[no name]

спасибо karthik за немедленное решение; но все же я добавляю файл ascx и cs для страницы 1 и где я могу добавить решение страницы 2

[no name]

я добавил в ascx файл -- код для страницы 1 он показывает ошибку, так как сеанс не находится в текущем контексте и где я могу добавить код для второй страницы

[no name]

если я добавляю его как таковой, я получаю ошибку, так как не могу получить доступ к gridview1 через вложенный тип, не могу получить доступ к нестатическому члену внешнего типа 'SharePointProject6.VisualWebPart6.VisualWebPart6. Webform1' через вложенный тип 'SharePointProject6.VisualWebPart6.VisualWebPart6. WebForm1'

Karthik_Mahalingam

Я давно работаю над sharepoint. так что не получаю объекты

[no name]

я показываю сетку как визуальную веб-часть на странице sharepoint ; при нажатии кнопки я хочу, чтобы эта страница была отправлена по электронной почте в формате pdf attchmnt может ли кто-нибудь предоставить код

Karthik_Mahalingam

google: экспортируйте страницу в pdf, вы найдете некоторые

[no name]

Спасибо, вы можете дать мне знать, как отображать только выбранные строки одного вида сетки на другой на той же странице без использования сеанса или сложного кода . Я использую
&ЛТ;АСП:таблицы с ID="gridview1, на" атрибут runat="сервер" AutoGenerateColumns="ложных" Высота="310px" стиль="маржи-право: 56px" ширина="704px"&ГТ;
& lt;столбцы>
<asp:templatefield HeaderText= "Select">
& lt;itemtemplate>
< asp:checkbox ID= " cbSelect"
CssClass=" gridCB "runat=" сервер " >


&ЛТ;как ASP:BoundField datafield в="заголовок" HeaderText="название" /&ГТ;
<asp:BoundField DataField=" Date "HeaderText= "Date" />
&ЛТ;как ASP:BoundField datafield в="событий" HeaderText="события" /&ГТ;


на проектирование и
protected void Page_Load(отправитель объекта, EventArgs e)
{
Веб-объекты spweb = SPContext.Тока.Сеть;
SPList list = web. Lists ["список выбора событий календаря"];
SPListItemCollection items = список.Предметы;
Управления gridview1.Источник данных = вещи.GetDataTable();
Управления gridview1.Привязку();
}
для cs файла

Karthik_Mahalingam

без использования сеанса вы должны передать выбранный идентификатор строки на другую страницу в строке запроса, извлечь эти записи из БД и отобразить их в gridview.

[no name]

можете ли вы предоставить код для передачи в виде строки запроса, поскольку я новичок в этом деле, что является непосредственным требованием

Karthik_Mahalingam

проверить это
http://www.c-sharpcorner.com/UploadFile/ca2535/query-string-in-Asp-Net/
http://www.aspdotnet-suresh.com/2012/10/query-string-in-aspnet-example-c-vbnet.html

Karthik_Mahalingam

проверять
https://stackoverflow.com/questions/13763764/passing-the-id-of-the-gridviews-selected-record-to-another-page-using-querystri

[no name]

спасибо за рекомендации, позвольте мне попробовать вот это

[no name]

можете ли вы предоставить этот код gridview на стороне клиента ie csomplease?

Karthik_Mahalingam

gridview не будет работать на стороне клиента, вам придется сгенерировать html-таблицу из контекстного ответа.

[no name]

Я создал серверную часть (webpart) для gridview , мне нужно применить разбиение на страницы для одного gridview;так что мои значения остаются такими.

я пробовал:&ЛТ;АСП:таблицы с ID="gridview1, на" атрибут runat="сервер" AutoGenerateColumns="false" - в AllowSorting = "истинный"
DataSourceID= "SqlDataSource1" EnableSortingAndPagingCallbacks = " true"
и еще какой-то код, позволяющий подкачать и увеличить индекс