JER*_*uha 2 c# asp.net gridview
我有gridview5列,最后一列只对某些成员可见.我希望当最后一列gvMessageList.Columns[4]不可见时,它的宽度百分比应该给第一列gvMessageList.Columns[0].
请让我知道,怎么可能.
我GridView的如下:
<asp:GridView ID="gvMessageList" runat="server" Width="100%" AutoGenerateColumns="false" AllowPaging="true" AllowSorting="true"
DataKeyNames="MESSAGE_ID" CellPadding="4" PageSize="51" EmptyDataText="No Records Found." OnSorting="gvMessageList_Sorting"
OnPageIndexChanging="gvMessageList_PageIndexChanging" OnRowDataBound="gvMessageList_RowDataBound" GridLines="None"
CssClass="table table-bordered table-condensed table-hover table-striped">
<Columns>
<asp:TemplateField HeaderText="Subject" HeaderStyle-Width="30%" SortExpression="MESSAGE_SUBJECT" HeaderStyle-BackColor="#D9EDF7"
HeaderStyle-ForeColor="#0088CC">
<ItemTemplate>
<asp:HyperLink ID="hlnkMessageSubject" runat="server" Text='<%# ((System.Data.DataRowView)Container.DataItem)["MESSAGE_SUBJECT"] %>'
NavigateUrl='<%# ((System.Data.DataRowView)Container.DataItem)["MESSAGE_URL"] %>'>
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="From" HeaderStyle-Width="14%" SortExpression="MESSAGE_FROM" HeaderStyle-BackColor="#D9EDF7"
HeaderStyle-ForeColor="#0088CC">
<ItemTemplate>
<asp:HyperLink ID="hlinkUser" runat="server" Text='<%#((System.Data.DataRowView)Container.DataItem)["MESSAGE_FROM"] %>'
NavigateUrl='<%#((System.Data.DataRowView)Container.DataItem)["FROM_URL"] %>'>
</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="CREATION_DATE" HeaderText="On" HeaderStyle-Width="15%" HeaderStyle-BackColor="#D9EDF7" HeaderStyle-ForeColor="#0088CC"
SortExpression="CREATION_DATE" />
<asp:TemplateField HeaderText="To" HeaderStyle-Width="21%" HeaderStyle-BackColor="#D9EDF7" HeaderStyle-ForeColor="#0088CC">
<ItemTemplate>
<asp:Label ID="lblTo" runat="server">
</asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Broadcast" HeaderStyle-Width="20%" Visible="false" HeaderStyle-BackColor="#D9EDF7" HeaderStyle-ForeColor="#0088CC">
<ItemTemplate>
<asp:Label ID="lblBroadcast" runat="server">
</asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
Run Code Online (Sandbox Code Playgroud)
在C#Codebehind中:
我想在这里增加第一列的百分比:
gvMessageList.Columns[4].HeaderStyle.Dispose();
gvMessageList.Columns[4].Visible = false;
Run Code Online (Sandbox Code Playgroud)
是否可以通过使用gvMessageList.Columns[0].HeaderStyle.Width = ??或类似的东西.
为width属性指定一个新的单元类型.第一个参数是您想要的宽度,第二个参数是要使用的测量值.在下面的示例中,我告诉列是表格宽度的50%.
gvMessageList.Columns[4].HeaderStyle.Width = New Unit(50, UnitType.Percentage);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8777 次 |
| 最近记录: |