|
gridview usercontrol paging
#37782391
Ссылка:
Ссылка на сообщение:
Ссылка с названием темы:
|
|
|
|
Здравствуйте уважаемые программисты. Я новичок в ASP--извините за тупость.
итак проблема в следующем. Дано: вебсайт асп(FW 4) , мастерпейдж, асп страничка и юзерконтрол добавляемый на нее декларативно. В узерконтроле есть грид с включенным пейджингом несколько текстбоксов для пользовательского ввода и КНОПКА--по ней осуществоляется вызов хранимки которая возвращает данные из базы в грид с параметрами ввденными пользователями в текстбоксы. Всем доволен, но одна весчь сильно огорчает.
проблема --смотрим на работу этого чудесного приложения из браузера. вводим текст в текстбокс--замечательно вводится--щелкаем КНОПКУ--и о чудо в грид вываливаются нужные данные. и в гриде появляется несколько страничек--при попытке перейти скажем на страничку с номером 2 неожиданно грид пропадает с формы--и явить его на место можно только нажав кнопку обновить в браузере или мою КНОПКУ. тогда он появляется и появляется именно со страничкой два. То бишь чтоб быстренько пропутешествовать по страничкам грида приходитс\ жать ссылку на страничку грида и еще кликать опять кнопку.
может кто нибудь из Вас о мудрейшие, подскажет как побороть эту неприятность?
грид из юзерконтрола
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46.
<asp:GridView ID="GridView1" runat="server" BackColor="#CCCCCC"
BorderColor="#999999" BorderStyle="Solid" BorderWidth="3px" CellPadding="4"
CellSpacing="2" ForeColor="Black" AllowPaging="True"
onpageindexchanging="GridView1_PageIndexChanging" PageSize="15"
AutoGenerateSelectButton="True" Font-Size="14px"
AutoGenerateColumns="False" onrowdatabound="GridView1_RowDataBound"
onselectedindexchanged="GridView1_SelectedIndexChanged"
DataKeyNames="номер" onpageindexchanged="GridView1_PageIndexChanged">
<FooterStyle BackColor="#CCCCCC" />
<HeaderStyle BackColor="Black" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#CCCCCC" ForeColor="Black" HorizontalAlign="Left" />
<RowStyle BackColor="White" />
<SelectedRowStyle BackColor="#000099" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F1F1F1" />
<SortedAscendingHeaderStyle BackColor="#808080" />
<SortedDescendingCellStyle BackColor="#CAC9C9" />
<SortedDescendingHeaderStyle BackColor="#383838" />
<Columns>
<asp:BoundField DataField="фамилия" HeaderText="фамилия">
</asp:BoundField>
<asp:BoundField DataField="имя" HeaderText="имя">
</asp:BoundField>
<asp:BoundField DataField="отчество" HeaderText="отчество">
</asp:BoundField>
<asp:BoundField DataField="дата_рожд" HeaderText="дата_рожд">
</asp:BoundField>
<asp:BoundField DataField="СНИЛС" HeaderText="СНИЛС">
</asp:BoundField>
<asp:BoundField DataField="ДокСер" HeaderText="ДокСер">
</asp:BoundField>
<asp:BoundField DataField="ДокНум" HeaderText="ДокНум">
</asp:BoundField>
<asp:BoundField DataField="ЕНП" HeaderText="ЕНП">
</asp:BoundField>
<asp:BoundField DataField="СерПол" HeaderText="СерПол">
</asp:BoundField>
<asp:BoundField DataField="НомПол" HeaderText="НомПол">
</asp:BoundField>
<asp:BoundField DataField="Статус_ЗЛ" HeaderText="Статус_ЗЛ">
</asp:BoundField>
<asp:BoundField DataField="Действ_До" HeaderText="Действ_До">
</asp:BoundField>
<asp:BoundField DataField="номер" HeaderText="номер">
</asp:BoundField>
</Columns>
</asp:GridView>
код из узерконтрола
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using regomsModel;
//using System.Web.Services.Description;
public partial class vk1 : System.Web.UI.UserControl
{
regomsEntities db = new regomsEntities();
protected void Page_Load(object sender, EventArgs e)
{
// с этого места идет загрузка данных в грид--просто для тс красоты
if (!IsPostBack) {
//fam,IM,ot,dr,ss,docs,docn,enp,spol,npol,sp,currdt
GridView1.DataSource = db.PERSON.Select(c => new
{
фамилия = c.FAM,
имя = c.IM,
отчество = c.OT,
дата_рожд = c.DR,
СНИЛС = c.SS,
ДокСер = c.DOCS,
ДокНум = c.DOCN,
ЕНП = c.ENP,
СерПол = c.SPOL,
НомПол = c.NPOL,
Статус_ЗЛ = c.SP,
Действ_До = c.CURRDT,
номер=c.ID
}).Take(50);
GridView1.DataBind();
}
//Sex_Zl.DataSource = db.VPOL.Select(c=>c.caption);
//Sex_Zl.DataBind();
Vid_Obr_Zl.DataSource = db.VPRZMETH.Select(c => c.CAPTION);
Vid_Obr_Zl.DataBind();
// с этого места биндуем радиобатон
RadioButton1.Checked = true;
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
GridView1.DataBind();
GridView1.Font.Size=10;
}
protected void GridView1_PageIndexChanged(object sender, EventArgs e)
{
Search_Zl.Click += Search_Zl_Click; //что то не то--это не работает--надо заменить или вообще удалить
}
protected void RadioButton1_CheckedChanged(object sender, EventArgs e)
{
if (RadioButton1.Checked == true) { RadioButton2.Checked = false; };
}
protected void RadioButton2_CheckedChanged(object sender, EventArgs e)
{
if (RadioButton2.Checked == true) { RadioButton1.Checked = false; };
}
protected void Search_Zl_Click(object sender, EventArgs e)
{
DateTime dt = new DateTime(1800, 01, 01);
if (!string.IsNullOrEmpty(Dr_Zl.Text)) { dt = DateTime.Parse(Dr_Zl.Text); };
if (string.IsNullOrEmpty(Fam_Zl.Text)) { Fam_Zl.Text = "%"; };
if (string.IsNullOrEmpty(Im_Zl.Text)) { Im_Zl.Text = "%"; };
if (string.IsNullOrEmpty(Ot_Zl.Text)) { Ot_Zl.Text = "%"; };
if (string.IsNullOrEmpty(SNILS_Zl.Text)) { SNILS_Zl.Text = "%"; };
//if (string.IsNullOrEmpty(Spol_Zl.Text)) { Spol_Zl.Text = "%"; };
if (string.IsNullOrEmpty(Npol_Zl.Text)) { Npol_Zl.Text = "%"; };
if (string.IsNullOrEmpty(Enp_Zl.Text)) { Enp_Zl.Text = "%"; };
int sex = 1;
//if (Sex_Zl.Text == "Женский") { sex = 2; };
//if (Sex_Zl.Text == "Мужской") { sex = 1; };
if (Sex_Zl.SelectedItem.Value == "2") { sex = 2; };
if (Sex_Zl.SelectedItem.Value=="1") { sex = 1; };
IEnumerable<search_person_Result> rez = from c in db.search_person(Fam_Zl.Text, Im_Zl.Text, Ot_Zl.Text,
dt, SNILS_Zl.Text, Npol_Zl.Text,
Enp_Zl.Text, sex)
select c;
GridView1.DataSource = rez.Select(c => new {
фамилия = c.fam,
имя = c.IM,
отчество = c.ot,
дата_рожд = c.dr,
СНИЛС = c.ss,
ДокСер = c.docs,
ДокНум = c.docn,
ЕНП = c.enp,
СерПол = c.spol,
НомПол = c.npol,
Статус_ЗЛ = c.sp,
Действ_До = c.currdt,
номер=c.id
}).Take(50).ToList();
GridView1.DataBind();
Label1.Text = dt.ToString() + ' ' + Fam_Zl.Text + ' ' + Im_Zl.Text + ' ' + "sex=" + sex.ToString();
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//e.Row.Cells[14].Visible = false; //попытка скрыть поле id
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
//Label1.Text += "id= " + GridView1.SelectedValue.ToString();
//int index = GridView1.SelectedIndex;
//int producer_id3 = (int)GridView1.SelectedDataKey.Values["id"];
//Label1.Text = producer_id3.ToString();
}
}
асп страничка
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47.
<%@ Page Title="" Language="C#" MasterPageFile="~/MasterVvod.master" AutoEventWireup="true" CodeFile="Polis2.aspx.cs" Inherits="Default2" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
<%@ Register TagPrefix="vk" TagName="vk1" Src="vk1.ascx" %>
<%@ Register TagPrefix="vk" TagName="vk2" Src="vk2.ascx" %>
<%@ Register TagPrefix="vk" TagName="vk3" Src="vk3.ascx" %>
<%@ Register TagPrefix="vk" TagName="vk4" Src="vk4.ascx" %>
<%@ Register TagPrefix="vk" TagName="vk5" Src="vk5.ascx" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
</asp:ToolkitScriptManager>
<asp:Wizard ID="Wizard1" runat="server">
<WizardSteps>
<asp:WizardStep ID="WizardStep1" runat="server" Title="Step 1">
<vk:vk1 runat="server" ID="vk1"></vk:vk1>
</asp:WizardStep>
<asp:WizardStep ID="WizardStep2" runat="server" Title="Step 2">
<vk:vk2 runat="server" ID="vk2"></vk:vk2>
</asp:WizardStep>
<asp:WizardStep ID="WizardStep3" runat="server" Title="Step 2">
<vk:vk3 runat="server" ID="vk3"></vk:vk3>
</asp:WizardStep>
<asp:WizardStep ID="WizardStep4" runat="server" Title="Step 2">
<vk:vk4 runat="server" ID="vk4"></vk:vk4>
</asp:WizardStep>
<asp:WizardStep ID="WizardStep5" runat="server" Title="Step 2">
<vk:vk5 runat="server" ID="vk5"></vk:vk5>
</asp:WizardStep>
<asp:WizardStep ID="Complete" runat="server" Title="Complete"
StepType="Complete">
тут итог действия
</asp:WizardStep>
</WizardSteps>
</asp:Wizard>
</asp:Content>
|
|
|