2016-08-24 73 views
0

的按钮可见不是拒绝可见。相反,它显示为纯文本。以下是我用它的代码。Telerik的radgrid控件GridButtonColumn没有按钮

<telerik:RadGrid ID="grvUpdate" runat="server" GridLines="Horizontal" 
    CellPadding="0" BorderWidth="0px" EnableEmbeddedSkins="False"   
    Width="382px" CellSpacing="0"> 
    <MasterTableView 
     AllowPaging="true" 
     PageSize="15" 
     CommandItemDisplay="Top" 
     AllowFilteringByColumn="false" DataSourceID="SqlDataSource1" AutoGenerateColumns="False" DataKeyNames="Id"> 

     <Columns> 
      <telerik:GridBoundColumn DataField="Id" DataType="System.Int64" FilterControlAltText="Filter Id column" HeaderText="Id" ReadOnly="True" SortExpression="Id" UniqueName="Id"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="Name" HeaderText="Name" SortExpression="Name" UniqueName="Name"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="Amount" HeaderText="Amount" SortExpression="Amount" UniqueName="Amount"> 
      </telerik:GridBoundColumn>     
      <telerik:GridButtonColumn ButtonType="PushButton" HeaderText="Reject" Text="Reject" UniqueName="Reject" CommandName="Reject"></telerik:GridButtonColumn> 
     </Columns> 
    </MasterTableView> 
</telerik:RadGrid> 

您能否让我知道需要对上述代码进行哪些更改才能使按钮正常显示。

+0

有没有人在那里帮助我吗? –

回答

0

下面的代码对我的作品

<telerik:GridTemplateColumn FilterControlAltText="Filter Reject column" UniqueName="Reject" HeaderText="Reject" Display="true"> 
        <ItemTemplate> 
         <telerik:RadButton ID="Button1" runat="server" ButtonType="StandardButton" Text="Reject" CommandName="Reject" /> 
        </ItemTemplate> 
       </telerik:GridTemplateColumn> 
0

正如你所设置EnableEmbeddedSkins="False",该GridButtonColumn可能不会在适当的样式呈现。

你可以做的是你的自定义CSS应用到GridButtonColumn,它的风格给你想要的方式。

​​

替代做法

<telerik:GridButtonColumn ButtonType="PushButton" HeaderText="Reject" Text="Reject" UniqueName="Reject" CommandName="Reject"></telerik:GridButtonColumn> 

protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e) 
{ 
    if (e.Item is GridDataItem) 
    { 
     var dataItem = (GridDataItem)e.Item; 
      (dataItem["Reject"].Controls[0] as Button).CssClass = "MyButtonStyle"; 
    } 
} 

<style type="text/css"> 
    .MyButtonStyle 
    { 
     background-color:black !important; 
     color:white!important; 
    } 
</style> 

使用自定义模板

<telerik:GridTemplateColumn> 
     <ItemTemplate> 
      <asp:Button ID="btnReject" runat="server" CommandName="Reject" CommandArgument='<%# Eval("Id") %>'/> 
     </ItemTemplate> 
</telerik:GridTemplateColumn> 

protected void RadGrid1_ItemCommand(object source, GridCommandEventArgs e) 
    { 
     if (e.CommandName == "Reject") 
     { 
      var Id = e.CommandArgument.ToString(); 
      // do something... 
     } 
    } 
+0

我已经删除了EnableEmbeddedSkins =“False”,但它仍然显示为文本。我怎样才能申请在CSS使其成为正常的按钮。 –

+0

@ CPK_2011我已经更新了我的答案,您可以尝试建议的替代方法。看看它是否适合你。 – woodykiddy

+0

但这不起作用。它添加了一个应用了颜色的纯色标签。我尝试在GridButtonColumn中应用。这也没有奏效。然后我放置HTML按钮

0

如果你的radgrid控件始终处于EditForm模式,确保那个专栏有它的Sho wInEditForm属性设置为true。