2013-10-01 61 views
0

IM試圖讓數字選擇,並在一個GridView底部的下拉列表(頁面大小)。我可以得到使用尋呼機設置顯示的數字選擇,或者使用尋呼機模板不顯示的下拉列表。他們不在一起工作..兩個pagertemplate和pagersettings可見

我發現了另一個解決這個問題here但沒有人提供一個有效的答案。

下面的可怕的例子是最好的,我可以提供(不能發佈圖像)

,,,,,, gridview的,,,,。

1 2 3 4 5 ,,,,,,,,,,頁大小| 10 |

編輯 忘記添加代碼

<PagerTemplate> 
<div style="float:right;"> 
<span style="font-size: 13px; padding-left: 20px;">Records per page </span> 
<asp:DropDownList ID="ddlAmountDisplayed" runat="server" 
         AutoPostBack="true"> 
<asp:ListItem Selected="True" Value="25" Text="25"></asp:ListItem> 
<asp:ListItem Value="50" Text="50"></asp:ListItem> 
<asp:ListItem Value="75" Text="75"></asp:ListItem> 
    <asp:ListItem Value="100" Text="100"></asp:ListItem> 
</asp:DropDownList> 
    </div> 
</PagerTemplate> 
<PagerSettings Mode="NumericFirstLast" Position="Bottom" /> 
+0

我已經找到答案是這樣的,通常我在發佈問題後發現它很短時間,我會在明天發佈答案(不能在8小時內回答),因爲它可能會幫助其他人,因爲我一直被困在這一天 – Nixdorf

回答

1

正如我以前說過,我發現這個site很短的一段時間後,我張貼的問題,希望這將幫助別人

protected void AmountDisplayed_SelectedIndexChanged(object sender, EventArgs e) 
    { 
     DropDownList ddlPageSize = sender as DropDownList; 
     if (ddlPageSize != null) 
      this.gvCodes.PageSize = int.Parse(ddlPageSize.SelectedValue); 

     if (ddlCodes.SelectedValue != "All" | ddlRegistered.SelectedValue != "All") 
     { 
      btnCodeSearch_Clicked(null, EventArgs.Empty); 
     } 
     else 
     { 
      BindCodes(); 
     } 
     ddlPageSize.SelectedValue = this.gvCodes.PageSize.ToString(); 
    } 

    protected void gvCodes_RowCreated(object sender, GridViewRowEventArgs e) 
    { 

     if (e.Row.RowType == DataControlRowType.Pager) 
     { 
      DropDownList ddlPageSize = new DropDownList(); 
      ddlPageSize.AutoPostBack = true; 

      ddlPageSize.SelectedIndexChanged += new EventHandler(AmountDisplayed_SelectedIndexChanged); 
      ddlPageSize.Items.Clear(); 
      int[] pageSizeOptions = new int[] { 25, 50, 75, 100 }; 

      for (int i = 0; i < pageSizeOptions.Length; i++) 
      { 
       ddlPageSize.Items.Add(pageSizeOptions[i].ToString()); 
      } 

      Table pagerTable = e.Row.Cells[0].Controls[0] as Table; 
      TableCell cell = new TableCell(); 
      cell.Controls.Add(new System.Web.UI.LiteralControl("Records per page:")); 
      cell.Controls.Add(ddlPageSize); 
      pagerTable.Rows[0].Cells.Add(cell); 

      ddlPageSize.SelectedValue = this.gvCodes.PageSize.ToString(); 
     } 
    } 
相關問題