ASP.NET CommandField & skin - PullRequest
       34

ASP.NET CommandField & skin

3 голосов
/ 17 марта 2010

Я привязываю к скину ASP.NET GridView CommandField. Все работает нормально, просто когда я перемещаю объявления свойств CommandField из файла страницы в скин, все свойства commandField игнорируются. вот мой файл скина:

<asp:GridView 
AllowPaging="true" 
AllowSorting="false" 
AutoGenerateEditButton="false" 
AutoGenerateDeleteButton="false" 
AutoGenerateSelectButton="false" 
AutoGenerateColumns="false" 
GridLines="None" 
PageSize="20" 
ShowFooter="false" 
ShowHeader="true" 
runat="server"> 
<Columns> 

<asp:CommandField 
ButtonType="Image" 
ControlStyle-Width="25" 
EditImageUrl="Images/Icons/pencil.png" 
DeleteImageUrl="Images/Icons/cross.png" 
/> 

</Columns> 
</asp:GridView> 

В web.config я применяю только StyleSheetTheme. Я что-то пропустил?

Спасибо

Ответы [ 4 ]

1 голос
/ 20 марта 2010

Я получаю:

Содержание литерала

<asp:CommandField
ButtonType="Image"
ShowDeleteButton="true"
ItemStyle-Width="25"
DeleteImageUrl="~/App_Themes/SimplaAdmin/Images/Icons/cross.png"
/>

не допускается в файле скина.

1 голос
/ 28 апреля 2011

Этого можно добиться с помощью StyleSheetTheme и НЕ Theme.

Ниже приведен стиль элемента управления, определенный в файле .skin

<asp:GridView runat="server" Font-Names="verdana,arial,sans serif" AllowSorting="True" AllowPaging="True" AutoGenerateColumns="False" Width="95%">
<Columns>
    <asp:CommandField ButtonType="Image" CancelImageUrl="~/Images/Buttons/16x16/Cancel.gif"
        EditImageUrl="~/Images/Buttons/16x16/Edit.gif" ShowEditButton="True" InsertImageUrl="~/Images/Buttons/16x16/New.gif" UpdateImageUrl="~/Images/Buttons/16x16/Update.gif" />

    <asp:CommandField ButtonType="Image" DeleteImageUrl="~/Images/Buttons/16x16/Delete.gif"
        ShowDeleteButton="True" />
</Columns>

<RowStyle Font-Size="Smaller" ForeColor="Black" />
<PagerStyle Font-Size="Smaller" ForeColor="Black" />
<SelectedRowStyle BackColor="Yellow" />
<HeaderStyle BackColor="#2D5C3D" Font-Size="Smaller" ForeColor="White" HorizontalAlign="left" />
<FooterStyle BackColor="#2D5C3D" />
<EditRowStyle BackColor="#2D5C3D" />
<AlternatingRowStyle BackColor="#ECE9D8" />

Файл web.config определяет StyleSheetTheme как уровень сайта

<pages styleSheetTheme="Green" controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>

Страница .aspx, содержащая элемент управления GridView

    <asp:GridView ID="gvUser" runat="server" AutoGenerateColumns="False" 
    DataKeyNames="Id" onpageindexchanged="gvUser_PageIndexChanged" 
    onpageindexchanging="gvUser_PageIndexChanging" 
    onrowcancelingedit="gvUser_RowCancelingEdit" onrowdeleting="gvUser_RowDeleting" 
    onrowediting="gvUser_RowEditing" onrowupdating="gvUser_RowUpdating" 
    onselectedindexchanging="gvUser_SelectedIndexChanging" onsorted="gvUser_Sorted" 
    onsorting="gvUser_Sorting">

    <Columns>
        <asp:BoundField DataField="Id" HeaderText="User Id" >
        <HeaderStyle HorizontalAlign="Right" VerticalAlign="Middle" />
        <ItemStyle HorizontalAlign="Right" VerticalAlign="Middle" />
        </asp:BoundField>


    </Columns>
</asp:GridView>

Для получения подробной информации, пожалуйста, обратитесь к следующему

  1. http://weblogs.asp.net/vimodi/ThemesFaqs
  2. http://weblogs.asp.net/vimodi/WhatIs-StyleSheetTheme

Надеюсь, это поможет!

0 голосов
/ 22 мая 2019

Если вы хотите использовать значок Fontawesome , вы можете изменить его следующим образом:

<asp:CommandField ButtonType="Link" ShowEditButton="true"
EditText="<i class='fas fa-edit'></i>" />

для удаления:

DeleteText="<i class='fas fa-trash-alt'></i>"

для использования Canel:

CancelText="<i class='fas fa-window-close'></i>"

для использования при обновлении:

UpdateText="<i class='fas fa-sync'></i>"
0 голосов
/ 18 марта 2010

Что произойдет, если вы переместите тег CommandField за пределы тега GridView?

т.е:.

<asp:GridView 
AllowPaging="true" 
AllowSorting="false" 
AutoGenerateEditButton="false" 
AutoGenerateDeleteButton="false" 
AutoGenerateSelectButton="false" 
AutoGenerateColumns="false" 
GridLines="None" 
PageSize="20" 
ShowFooter="false" 
ShowHeader="true" 
runat="server"> 
</asp:GridView> 

<asp:CommandField 
ButtonType="Image" 
ControlStyle-Width="25" 
EditImageUrl="Images/Icons/pencil.png" 
DeleteImageUrl="Images/Icons/cross.png" 
/> 
...