gpt4 book ai didi

c# - 在移动设备上运行时更改 Gridview 列的可见性?

转载 作者:太空宇宙 更新时间:2023-11-04 11:45:29 25 4
gpt4 key购买 nike

提供 Gridview :

  <asp:GridView ID="Grid" runat="server" DataSourceID="ODS">   
<Columns>
<asp:BoundField HeaderText="Product"
DataField="ProductName" SortExpression="ProductName">
</asp:BoundField>
<asp:BoundField HeaderText="Unit Price"
DataField="UnitPrice" SortExpression="UnitPrice"
DataFormatString="{0:c}">
<ItemStyle HorizontalAlign="Right"></ItemStyle>
</asp:BoundField>
<asp:BoundField HeaderText="Units In Stock"
DataField="UnitsInStock"
SortExpression="UnitsInStock"
DataFormatString="{0:d}">
<ItemStyle HorizontalAlign="Right"></ItemStyle>
</asp:BoundField>
<asp:BoundField HeaderText="Quantity Per Unit"
DataField="QuantityPerUnit"></asp:BoundField>
</Columns>
</asp:GridView>

<asp:ObjectDataSource ID="ODS"
runat="server"
SelectMethod="GetItems">
</asp:ObjectDataSource>

如何隐藏列,即将它们设置为 Visible=false当设备正在运行的是移动的吗?

通常我用

 @media screen and (max-width:480px) {
...
}

但它只适用于 CSS 类。

我想做的是将第一列设置为 Visible="false"使用

Grid.Columns[0].Visible = "false" ; 

从后面的代码来看,当设备的分辨率低于 max-width:480px 时.

是否可以使用 @media screen and为了这个目的 ?

我试过使用 <%= %>但它不适用于 max-width:480px .

非常感谢

最佳答案

你可以这样做:

protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
if (Request.Browser.IsMobileDevice)
{
Grid.Columns[0].Visible = "false";
....
}
}
}

我什至在 Chrome 上使用开发者工具使用 Toggle device mode 模拟移动设备进行了测试

您也可以使用这两个属性来获取尺寸:

Request.Browser.ScreenPixelsWidth

Request.Browser.ScreenPixelsHeight

关于c# - 在移动设备上运行时更改 Gridview 列的可见性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31027609/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com