gridview 相关问题

Gridview是用于显示和操作来自各种数据源的数据的控件。

Android GridView 适配器使用错误的位置

我正在使用 Xamarain Android 在 C# 上针对 KitKat (4.4 - API19) 进行开发。 环境 所以我有一个想要使用 GridView 渲染的车辆列表。因为这是在网格的一些选项卡中...

回答 2 投票 0

如何让gridview在Flutter中水平滚动时FixedCrossAxisCount适合宽度?

类 GridViewCalendar 扩展 StatelessWidget { const GridViewCalendar({super.key, 必需 this.monthData}); 最终地图月数据; @覆盖 小部件构建(BuildContext

回答 1 投票 0

使用分页在gridview中显示图像

我有一个带有增量加载的网格视图,可以显示本地文件夹中的书籍封面。 XAML: 我有一个具有增量加载功能的网格视图,可以显示本地文件夹中的书籍封面。 XAML: <GridView x:Name="komikGridView" DataFetchSize="18" IncrementalLoadingTrigger="Edge" IncrementalLoadingThreshold="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> <GridView.Resources> <DataTemplate x:Key="DataTemplatekomikGridView"> <Grid x:Name="komikGrid1" Margin="5,5,0,0" Width="145" Height="255" Background="White"> <Image x:Name="cover" Width="145" Height="210" VerticalAlignment="Top" Source="{Binding Image}" Stretch="Fill" /> </Grid> </DataTemplate> </GridView.Resources> <GridView.ItemTemplate> <StaticResource ResourceKey="DataTemplatekomikGridView"/> </GridView.ItemTemplate> </GridView> 代码: var booksource = new BookSource(); var collection = new IncrementalLoadingCollection<BookSource, Book>(booksource, 18); try { await collection.LoadMoreItemsAsync(0); } komikGridView.ItemsSource = collection; Books.cs: public class Book { public string Name { get; set; } public string Judul { get; set; } public string Image { get; set; } } public class BookSource : IIncrementalSource<Book> { public List<Book> _books; public BookSource() { _books = new List<Book>(); } IReadOnlyList<StorageFile> files; IReadOnlyList<StorageFile> thumbfiles; StorageFolder kategorithumb; StorageFolder kategori; StorageFolder localfolder = ApplicationData.Current.LocalFolder; public async Task<List<Book>> CopyResource() { await Task.Run(async () => { StorageFolder _pdffolder = Windows.ApplicationModel.Package.Current.InstalledLocation; _pdffolder = await _pdffolder.GetFolderAsync("files"); _pdffolder = await _pdffolder.GetFolderAsync("pdf"); _pdffolder = await _pdffolder.GetFolderAsync("komik"); IReadOnlyList<StorageFile> _pdffiles = await _pdffolder.GetFilesAsync(); StorageFolder library = await localfolder.CreateFolderAsync("library", CreationCollisionOption.OpenIfExists); kategori = await library.CreateFolderAsync("komik", CreationCollisionOption.OpenIfExists); files = await kategori.GetFilesAsync(); if (((App)(App.Current)).FolderName == "komik" && files.Count == 0) { foreach (var item in _pdffiles) { await item.CopyAsync(kategori, item.Name, NameCollisionOption.ReplaceExisting); } files = await kategori.GetFilesAsync(); } StorageFolder _thumbfolder = Windows.ApplicationModel.Package.Current.InstalledLocation; _thumbfolder = await _thumbfolder.GetFolderAsync("files"); _thumbfolder = await _thumbfolder.GetFolderAsync("cover"); _thumbfolder = await _thumbfolder.GetFolderAsync("komik"); IReadOnlyList<StorageFile> _coverfiles = await _thumbfolder.GetFilesAsync(); //which returns List<StorageFile> StorageFolder thumbfolder = await localfolder.CreateFolderAsync("thumb", CreationCollisionOption.OpenIfExists); kategorithumb = await thumbfolder.CreateFolderAsync("komik", CreationCollisionOption.OpenIfExists); thumbfiles = await kategorithumb.GetFilesAsync(); if (((App)(App.Current)).FolderName == "komik" && thumbfiles.Count == 0) { foreach (var item in _coverfiles) { await item.CopyAsync(kategorithumb, item.Name, NameCollisionOption.ReplaceExisting); } } }); IEnumerable<Temp> sortingFiles = files.Select(x => new Temp { File = x }).ToList(); IEnumerable<StorageFile> sortedfiles = sortingFiles.OrderByDescending(x => x.LastModified).Select(x => x.File).ToList(); var books = new List<Book>(); string filePath = ""; foreach (StorageFile file in sortedfiles) { Book book = new Book(); StorageFile thumbFile = await kategorithumb.GetFileAsync(file.Name.ToString() + ".png"); string path = kategorithumb.Path; filePath = Path.Combine(path, file.Name.ToString() + ".png"); book.Name = file.DisplayName.ToString(); book.Image = thumbFile.Path; await Window.Current.CoreWindow.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { books.Add(book); }); } return books; } private ProgressRing progressRing = ((Window.Current.Content as Frame).Content as LibraryPage).loading; public async Task<IEnumerable<Book>> GetPagedItemsAsync(int pageIndex, int pageSize, CancellationToken cancellationToken = default(CancellationToken)) { progressRing.Visibility = Visibility.Visible; progressRing.IsActive = true; if (_books.Count == 0) { foreach (var item in await CopyResource()) { _books.Add(item); } } var result = (from p in _books select p).Skip(pageIndex * pageSize).Take(pageSize); await Task.Delay(1000); progressRing.Visibility = Visibility.Collapsed; progressRing.IsActive = false; return result; } public class Temp { public StorageFile File { get; set; } public string Name { get; set; } } 我想在gridview中首先显示18本书的封面。然后如果用户滚动,它将显示接下来的 18 本书封面,依此类推,直到所有书籍封面都显示在 gridview 中。如何应用? 如果需要控制每次加载的源的大小。您需要的只是在创建 itemsPerPage 时将 IncrementalLoadingCollection 参数设置为 18。 像这样: collection = new IncrementalLoadingCollection<NamedColorSource, NamedColor>(18); 然后您可以在 GetPagedItemsAsync 方法中放置一个断点并检查 pageSize 参数。你会看到它是你想要的 18。

回答 1 投票 0

Gridview 分页复选框未正确分配

我的 gridview 中有数据,并且 pagesize = 2。此外,gridview 中的每一行都有一个用于批准/拒绝的复选框。 如果我检查了第一页的 2 行和第二页的 2 行,它只批准最后两行...

回答 1 投票 0

如何在Flutter GridView中启用分页?

我是 dart 新手,我知道这可能很简单。但是,我无法找到关于“如何在 Flutter 的 GridView 中启用分页”的简单答案。我来自一个快速的背景,这是可以实现的......

回答 2 投票 0

使用row命令分页

我有一个带有“选择”行和分页的网格视图。 当我尝试更改分页站点时出现错误。 如果我使用 If() 语句,我可以摆脱这个问题,但我的选择事件将不起作用。 /...

回答 2 投票 0

Gridview 中的分页 - 数据源不支持服务器端数据分页

我正在尝试对 GridView 进行分页,但出现错误:“数据源不支持服务器端数据分页”。 我不明白我做错了什么...... HTML(ASPX 标记): &...

回答 1 投票 0

asp.NET 在 gridview 上使用 Skip 和 Take 来应用分页

我想要的是每 3 页有 5 个结果。

回答 2 投票 0

GridView 页码出现在相隔很远的单独列中

我正在使用如下的网格视图。不知何故,页码出现在单独的列中。我希望他们一起出现在中心。如何将页码放在中间? 我正在使用如下的网格视图。不知何故,页码出现在单独的列中。我希望他们一起出现在中心。如何将页码放在中间? <asp:GridView ID="GridView1" runat="server" Width="100%" OnRowCommand="GridView1_RowCommand" CssClass="GridStyle" AllowPaging="true" AllowSorting="True" AutoGenerateColumns="False" BorderColor="Black" OnPageIndexChanging="GridView1_PageIndexChanging"> <PagerStyle Font-Underline="false" BorderColor="White" BorderStyle="None" BorderWidth="0" /> CSS .GridStyle { table-layout: auto; border: 1px solid black; background-color: White; font-family: Arial, Helvetica, sans-serif; font-size: 12px; /*border-collapse: collapse; margin-bottom: 0px;*/ } .GridStyle tr { border: 1px solid black; color: black; background-color: #E5E4F2; height: 25px; } .GridStyle th { background-color: white; border: none; text-align: left; font-weight: bold; font-size: 15px; padding: 4px; color: black; } .GridStyle tr th a, .GridStyle tr th a:visited { color: red; } .GridStyle tr th, .GridStyle tr td table tr td { color: #484585; border: 1px solid black; } .GridStyle td { border-bottom: 1px solid black; padding: 2px; } 像这样 您的 gridViewPager 的 CSS 类可能会根据表格宽度调整页码元素的大小。 查看 gridViewPager,特别是关于任何 width: 100%;。 GridView 中的分页器是一个嵌套表。所以它可能从父元素继承了 100% 宽度属性。 在 HTML 中,分页器看起来像这样。 <tr> <td colspan="8"> <table> <tr> <td><span>1</span></td> <td><a href="javascript:__doPostBack(&#39;ctl00$mainContentPane$GridView1&#39;,&#39;Page$2&#39;)">2</a></td> <td><a href="javascript:__doPostBack(&#39;ctl00$mainContentPane$GridView1&#39;,&#39;Page$3&#39;)">3</a></td> </tr> </table> </td> </tr> 您可以修复继承或为寻呼机提供自己的类。 <PagerStyle CssClass="pagerCssClass" Font-Underline="false" BorderColor="White" BorderStyle="None" BorderWidth="0" />

回答 2 投票 0

android:Gridview 通过单击按钮显示更多项目

我想创建一个像这样的网格视图。 (抱歉,有点乱,画得不好:D) 所以基本上 gridview 将显示第 1 - 4 个项目。如果我点击下一步,第 5-8 项将会出现.. a...

回答 2 投票 0

GridView 不显示在 GridView_PageIndexChanging 上

我有一个面板 ViewStock,我可以在其中查看数据库中 gridview 中的股票,并通过代码进行 DataBind() 操作。允许分页并在 html 中的 gridview 标记中创建事件“OnPageIndexChanging”,Imple...

回答 3 投票 0

在所有分页和具有真正分页的网格视图中打印标题

我有一个像这样的标题div: 我有一个像这样的标题div: <div id="header" style="width:100%; padding: 6px; margin-right: 20px; border-top-style: dotted; border-color: inherit; border-width: 0.2px; font-family: 'B Yekan'; font-size: 10pt;"> <p style="display:block;float:right"> <a style="right:0; font-size: 14pt; margin-right: 10px"> <asp:Label ID="lblMasir" runat="server" Text=""></asp:Label> </a> </p> </div> 标题 div 下的 div 中的网格视图如下: <div style="float: right; direction: rtl"> <asp:GridView Font-Names="B Nazanin" Font-Size="10pt" ID="GridView1" AllowPaging="false" AutoGenerateColumns="true" runat="server" CellPadding="6" BorderStyle="Double" OnDataBound="GridView1_DataBound" OnRowCreated="GridView1_RowCreated"> <HeaderStyle Font-Bold="True" Font-Size="9pt" /> </asp:GridView> </div> 这两个 div 位于另一个容器 div 中,标题宽度与 gridview 宽度相同: <div style="position:absolute"> <div id="header" …> … </div> <br /> <div id="griddiv…> … </div> </div> 那么我如何打印这个页面,标题在所有打印页面中重复,作为 gridview 和 gridview 打印的标题与真正的分页。 我知道如何使用分页打印单个 girdview,但我不知道如果所有页面中都有网格,如何在顶部添加标题。 问候! 我的 VB 答案的 C# 版本: private void gvExpertRateHistory_PreRender(Object sender, System.EventArgs e) { GridView gv = (GridView)sender; Table InnerTable = (Table)gv.Controls[0]; if (gv.HeaderRow != null && InnerTable != null) { GridViewRow hr; hr = new GridViewRow(0, -1, DataControlRowType.Header, DataControlRowState.Normal); hr.Cells.Add(NewCell(1, String.Empty, gv, Alignment:HorizontalAlign.Left)); hr.Cells.Add(NewCell(2, "Requested On", gv, Alignment: HorizontalAlign.Left)); hr.Cells.Add(NewCell(4, "Review Rates", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(6, "Court Rates", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(6, "Deposition Rates", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(4, "IME Rates", gv, "WhiteBorderLB")); InnerTable.Rows.AddAt(0, hr); hr = new GridViewRow(0, -1, DataControlRowType.Header, DataControlRowState.Normal); hr.Cells.Add(NewCell(1, "Expert", gv, Alignment: HorizontalAlign.Left)); hr.Cells.Add(NewCell(2, "Requested By", gv, Alignment: HorizontalAlign.Left)); hr.Cells.Add(NewCell(2, "Hourly", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(2, "Flat", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(2, "Hourly", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(2, "Daily", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(2, "Half-Day", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(2, "Hourly", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(2, "Daily", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(2, "Half-Day", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(2, "Hourly", gv, "WhiteBorderLB")); hr.Cells.Add(NewCell(2, "Flat", gv, "WhiteBorderLB")); InnerTable.Rows.AddAt(1, hr); } } private TableHeaderCell NewCell(int colspan, string text, GridView gv, string CssClass = "", HorizontalAlign Alignment = HorizontalAlign.Center) { TableHeaderCell thc = new TableHeaderCell(); thc.HorizontalAlign = Alignment; thc.ColumnSpan = colspan; thc.Text = text; thc.BackColor = gv.HeaderRow.BackColor; thc.ForeColor = gv.HeaderRow.ForeColor; thc.Font.Bold = true; thc.CssClass = CssClass; return thc; }

回答 1 投票 0

MVC 分页中最后一页和第一页出现异常

protected void gvValues_PageIndexChanging(对象发送者,GridViewPageEventArgs e) { gvValues.PageIndex = e.NewPageIndex; this.FillData(); } 寻呼工作正常...

回答 1 投票 0

ASP.NET C# GridView 在分页或排序时丢失搜索选项

我一天中的大部分时间都在尝试通过研究来解决这个问题,但我无法找到适合我当前代码的答案。 我已经设置了一个由

回答 1 投票 0

ASP.NET GridView 分页 - 处理最后一页按钮

我正在尝试利用 asp:GridView 的内置分页功能,但当模式设置为 NumericFirstLast 时,似乎无法使“最后一页”按钮起作用。 这是代码示例: <...

回答 1 投票 0

无法将“System.Web.UI.WebControls.GridView”类型的对象强制转换为“System.Web.UI.WebControls.LinkButton”类型。使用分页时

我有一个 Gridview,其中放置了两个用于编辑和删除行的 LinkButton。 我有一个 Gridview,其中放置了两个用于编辑和删除行的 LinkButton。 <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" OnRowCommand="GridView1_RowCommand" Width="631px" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="4" ForeColor="Black" GridLines="Horizontal" Height="144px" style="text-align: right" AllowPaging="True" OnPageIndexChanging="GridView1_PageIndexChanging"> <Columns> <asp:TemplateField> <ItemTemplate> &nbsp;&nbsp;&nbsp; <asp:LinkButton ID="LinkEdit" runat="server" CommandArgument='<%#Eval("eid") %>'>Edit</asp:LinkButton> &nbsp;| <asp:LinkButton ID="LinkDelete" runat="server" CommandArgument='<%#Eval("eid") %>'>Delete</asp:LinkButton> </ItemTemplate> </asp:TemplateField> 但是当我在 Gridview 中添加分页并尝试转到第 2 页、第 3 页...时,它给了我错误:- 无法将“System.Web.UI.WebControls.GridView”类型的对象转换为“System.Web.UI.WebControls.LinkButton”类型。 Source Error: Line 29: { Line 30: string id = e.CommandArgument.ToString(); Line 31: string cmdText = ((LinkButton)e.CommandSource).Text; Line 32: if (cmdText.Equals("Edit")) Line 33: { 实际错误显示在第 31 行: protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { string id = e.CommandArgument.ToString(); string cmdText = ((LinkButton)e.CommandSource).Text; if (cmdText.Equals("Edit")) { Response.Redirect("Emp_Edit.aspx?id=" + id); } else { Class1.EmpDelete(id); Response.Redirect("Emp_Reg.aspx"); } } protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; ShowAll(); } public void ShowAll() { GridView1.DataSource = Class1.ShowData(); GridView1.DataBind(); } 像这样尝试并相应地、小心地改变一切: 更改视图如下: <asp:LinkButton id="LinkEdit" Text="Edit" CommandName="Edit" CommandArgument='<%#Eval("eid") %>' runat="server"/> <asp:LinkButton id="LinkDelete" Text="Delete" CommandName="Edit" CommandArgument='<%#Eval("eid") %>' runat="server"/> 更改代码隐藏如下: string cmdText = e.CommandName; // Line 31 或者也改变你的方法: <asp:LinkButton id="LinkEdit" Text="Edit" CommandName="Edit" CommandArgument='<%#Eval("eid") %>' OnCommand="LinkButton_Command" runat="server"/> 还有 void LinkButton_Command(Object sender, CommandEventArgs e) { string cmdText = e.CommandName; } 错误原因是 string cmdText = ((LinkButton)e.CommandSource).Text;线 和 (LinkButton)e.CommandSource 部分。 它返回命令源,它是一个网格视图,并且您试图将其转换为链接按钮,因此这是无效的转换。 另一件事,e.CommandArgument中的gridview_RowCommand返回行的索引,而不是控件CommandArgument文本或值。 所以,你必须尝试这样的事情 protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { int index = Convert.ToInt32(e.CommandArgument.ToString()); LinkButton lb=(LinkButton )GridView1.Rows[index].FindControl("lblCmd");//lblCmd is the Id of Your Link Button string id = lb.CommandArgument.ToString(); string cmdText = lb.Text; if (cmdText.Equals("Edit")) { Response.Redirect("Emp_Edit.aspx?id=" + id); } else { Class1.EmpDelete(id); Response.Redirect("Emp_Reg.aspx"); } } 或 但在这种情况下,您的 gridview 编辑按钮必须包含 CommandName 属性和值 "Edit" protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { int index = Convert.ToInt32(e.CommandArgument.ToString()); LinkButton lb=(LinkButton )GridView1.Rows[index].FindControl("lblCmd");//lblCmd is the Id of Your Link Button if(e.CommandName=="Edit") { Response.Redirect("Emp_Edit.aspx?id=" + lb.CommandArgument); } else { Class1.EmpDelete(idlb.CommandArgument; Response.Redirect("Emp_Reg.aspx"); } }

回答 2 投票 0

在 ASP.NET gridview 中切换到另一个页面时如何重新加载方法

我有一个 GridView,现在我不想在使用下一页时重新加载方法。 这是我的 GridView,您可以看到有一个 onPageIndexChanging 方法。 这是我必须做的吗...

回答 1 投票 0

分页在 Gridview 中无法正常工作

当我使用两个文本框搜索数据并按下按钮时,数据将填充在 Gridview 中。我设置允许分页=True。当我尝试在 Gridview 中从第一页移动到第二页时,gridview 会

回答 1 投票 0

无法将“System.Web.UI.WebControls.GridView”类型的对象转换为“System.Web.UI.WebControls.LinkButton”类型

奇怪的错误。我有一个 gridview,我添加了分页。 奇怪的错误。我有一个 gridview,我添加了分页。 <asp:GridView ID="gv" runat="server" AutoGenerateColumns="False" AllowPaging="True" OnPageIndexChanging="gv_PageIndexChanging" OnRowCommand="gv_RowCommand" OnRowDataBound="gv_RowDataBound" PageSize="3" GridLines="None" EmptyDataText="No data available." ShowHeader="false"> <Columns> <asp:TemplateField> <ItemTemplate> <asp:LinkButton ID="linkButton" runat="server" Text="Add"></asp:LinkButton><br /> 它可以很好地加载第一页,但是,如果我尝试转到第 2、3 页,则会出现错误 无法将“System.Web.UI.WebControls.GridView”类型的对象转换为 输入“System.Web.UI.WebControls.LinkButton”。 protected void gv_RowCommand(object sender, GridViewCommandEventArgs e) { GridViewRow Row = (GridViewRow)(((LinkButton)e.CommandSource).NamingContainer); //error if (e.CommandName == "Add") { .... } } protected void gv_PageIndexChanging(object sender, GridViewPageEventArgs e) { gv.PageIndex = e.NewPageIndex; gv.DataBind(); } 我以为这是因为 GridViewRow 位于 e.CommandName 之外,所以我将其移到了里面,但是,当我点击分页时,这只是显示“无可用数据”消息。 我现在已经解决了,问题出在PageIndexChanging上。由于我有一个用于绑定网格的公共类,因此我将其称为而不是 gv.DataBind。 protected void gv_PageIndexChanging(object sender, GridViewPageEventArgs e) { gv.PageIndex = e.NewPageIndex; BindData(); }

回答 1 投票 0

ExtJS 商店显示网格问题

我有一个问题,我试图在单个页面上的可滚动网格中显示商店的全部内容,但无论我做什么,当我查找时,我只得到商店中返回的 25 条记录...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.