Telerik RadGrid 条件显示
Telerik RadGrid conditional display
这是我在 asp.net 页面
中的 RadGrid 代码
<telerik:RadGrid ID="grvData" runat="server" GridLines="Horizontal" EnableEmbeddedSkins="false" CellPadding="0" BorderWidth="0px"
Width="1000px" Height="300px" CellSpacing="0"
OnItemCommand="grvData_ItemCommand"
OnNeedDataSource="grvData_NeedDataSource" AllowPaging="True" AllowSorting="True" Skin="skn_RadGridCustom"
SkinsDir="|CurrentTheme|/" SkinsPath="|CurrentTheme|/" >
<ClientSettings>
<Scrolling AllowScroll="True" UseStaticHeaders="True" />
</ClientSettings>
<MasterTableView PageSize="10"
AllowFilteringByColumn="false" AutoGenerateColumns="False" DataKeyNames="Id" AllowSorting="True">
<Columns>
<telerik:GridBoundColumn DataField="Id" DataType="System.Int64" ReadOnly="True" UniqueName="Id" Display="true">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="DetailId" DataType="System.Int64" ReadOnly="True" UniqueName="DetailId" Display="true">
</telerik:GridBoundColumn>
<telerik:GridTemplateColumn FilterControlAltText="Filter Reject column" UniqueName="Reject" HeaderText="Reject" Display="true">
<ItemTemplate>
<telerik:RadButton ID="btnReject" runat="server" ButtonType="StandardButton" Text="Reject" CommandName="Reject" />
</ItemTemplate>
</telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
如何在加载网格时根据数据绑定到 RadGrid 的存储过程中的 IsCancelled=1/0 列以 enabled/disabled 模式显示拒绝按钮。
请尝试使用以下代码片段。
ASPX.CS 请为您的 radgrid 订阅 "ItemDataBound" 活动。
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = e.Item as GridDataItem;
RadButton btnReject = item.FindControl("btnReject") as RadButton;
if (item.GetDataKeyValue("IsCancelled").ToString() == "1")
{
btnReject.Enabled = true;
}
else
{
btnReject.Enabled = false;
}
}
}
ASPX
要将 'IsCancelled' 字段访问到 C# 代码中,请将此字段指定为数据键。
<MasterTableView DataKeyNames="Id,IsCancelled">
如有任何疑问,请告诉我。
这是我在 asp.net 页面
中的 RadGrid 代码<telerik:RadGrid ID="grvData" runat="server" GridLines="Horizontal" EnableEmbeddedSkins="false" CellPadding="0" BorderWidth="0px"
Width="1000px" Height="300px" CellSpacing="0"
OnItemCommand="grvData_ItemCommand"
OnNeedDataSource="grvData_NeedDataSource" AllowPaging="True" AllowSorting="True" Skin="skn_RadGridCustom"
SkinsDir="|CurrentTheme|/" SkinsPath="|CurrentTheme|/" >
<ClientSettings>
<Scrolling AllowScroll="True" UseStaticHeaders="True" />
</ClientSettings>
<MasterTableView PageSize="10"
AllowFilteringByColumn="false" AutoGenerateColumns="False" DataKeyNames="Id" AllowSorting="True">
<Columns>
<telerik:GridBoundColumn DataField="Id" DataType="System.Int64" ReadOnly="True" UniqueName="Id" Display="true">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="DetailId" DataType="System.Int64" ReadOnly="True" UniqueName="DetailId" Display="true">
</telerik:GridBoundColumn>
<telerik:GridTemplateColumn FilterControlAltText="Filter Reject column" UniqueName="Reject" HeaderText="Reject" Display="true">
<ItemTemplate>
<telerik:RadButton ID="btnReject" runat="server" ButtonType="StandardButton" Text="Reject" CommandName="Reject" />
</ItemTemplate>
</telerik:GridTemplateColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
如何在加载网格时根据数据绑定到 RadGrid 的存储过程中的 IsCancelled=1/0 列以 enabled/disabled 模式显示拒绝按钮。
请尝试使用以下代码片段。
ASPX.CS 请为您的 radgrid 订阅 "ItemDataBound" 活动。
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem)
{
GridDataItem item = e.Item as GridDataItem;
RadButton btnReject = item.FindControl("btnReject") as RadButton;
if (item.GetDataKeyValue("IsCancelled").ToString() == "1")
{
btnReject.Enabled = true;
}
else
{
btnReject.Enabled = false;
}
}
}
ASPX 要将 'IsCancelled' 字段访问到 C# 代码中,请将此字段指定为数据键。
<MasterTableView DataKeyNames="Id,IsCancelled">
如有任何疑问,请告诉我。