2010-03-08 5 views
1

я должен исправить заголовок в GridView, и я использую это в классе стилеcss проблема в верхней части :?

<style type="text/css"> 
.gridFixedHeader 
{ 
background-color:white; 
position:relative; 
top:expression(GridView1.offsetParent.scrollTop-2); 
} 
</style> 

, но я получаю сообщение об ошибке, что выражение (GridView1.offsetParent.scrollTop-2), не действует ... , что все мне нужно сделать, чтобы сделать эту работу .....

любые предложения

Главная цель ... чтобы исправить заголовки, чтобы они не двигают, когда GridView прокручивается вверх или вниз ...

любая помощь будет оценил ...

вот мой GridView код

<asp:Panel ID="Panel1" runat="server" Height="100px" ScrollBars="Vertical"> 

<asp:GridView ID="GridView1" runat="server" AllowSorting="True" 
     AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" 
     BorderStyle="None" BorderWidth="1px" CellPadding="3" 
     DataKeyNames="MachineGroupID" DataSourceID="SqlDataSource1"> 
     <RowStyle ForeColor="#000066" /> 
     <HeaderStyle CssClass="gridFixedHeader" /> 
     <Columns> 
      <asp:BoundField DataField="MachineGroupID" HeaderText="MachineGroupID" 
       InsertVisible="False" ReadOnly="True" SortExpression="MachineGroupID" /> 
      <asp:BoundField DataField="MachineGroupName" HeaderText="MachineGroupName" 
       SortExpression="MachineGroupName" /> 
         </Columns> 
     <FooterStyle BackColor="White" ForeColor="#000066" /> 
     <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" /> 
     <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" /> 
     <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" /> 
    </asp:GridView> 
    </asp:Panel> 

так что здесь у меня есть GridView, где, когда я прокручивать строка заголовка движется слишком .. я не хочу, чтобы это произошло ..

+0

Просьба пояснить на конкретном языке, отличном от gridview, что вы пытаетесь сделать, я уверен, что кто-то придумает правильную директиву CSS для него. –

ответ

3

Недействительно в W3C. Это только IE. Чтобы делать то, что вы ищете в правильном порядке, вам потребуется запустить JavaScript и исправить заголовки.

Если вы объясните свой желаемый результат, я уверен, что кто-то может помочь. Я сделал заголовки GridView похожим на то, что хочу много раз.

UPDATE: Вот хорошая статья: http://www.dotnetcurry.com/ShowArticle.aspx?ID=255

+0

, пожалуйста, помогите, если u kno, как я могу исправить заголовки в моем gridview. – user175084

+0

как в случае, когда я прокручиваю заголовок, должен оставаться на вершине – user175084

+0

oK это будет работать только для IE и firefox ... – user175084

0

Вы сильно не рекомендуется использовать выражения CSS, поскольку они выполняются на каждый событий браузера, включая mouseMove. Они также не работают ни на чем, кроме IE.

Я не могу ответить на ваш вопрос дальше из-за отсутствия деталей того, чего вы пытаетесь достичь.

+0

все, что я пытаюсь сделать, это исправить заголовки ... и пробовал все ... но не повезло ... в некоторых случаях это работает в IE и FF, но не в хром ... так что мне не повезло ... пожалуйста, помогите, если вы знаете что-то связанное .. спасибо – user175084

+0

Какие заголовки? Пожалуйста, дайте некоторый контекст того, что вы делаете, вставьте html в вопрос. – raveren

+0

Заголовки gridview: (для столбцов) – user175084

-1

Если вы пытаетесь прикрепить его к верхней части окна просмотра попробовать:

.gridFixedHeader 
{ 
background-color:white;  
position:fixed; 
top:20px; //optional 
} 

в элементы CSS

редактирования: просто понял, что вы выглядите так, как будто вы ставили заголовок GridViews, поэтому это, вероятно, не сработает, попробуйте опубликовать некоторый HTML-код, созданный Gridview, и что вы хотите сделать с ним, пожалуйста,

+0

, кстати, это будет работать и во всех браузерах ... – Alex

1

Когда gridview отображается в html, идентификатор GridView1, вероятно, переписывается.

вы, вероятно, хотите что-то вроде:

top:expression(<%= GridView1.ClientID %>.offsetParent.scrollTop-2); 

хотя это может получить, что вы хотите, это, вероятно, не лучшая форма.

+1

IE только. UGH !!! –

+0

Да, выражение будет работать только в IE, но то, что он привык работать в любом браузере. –

+0

Почему я получаю ошибку как недействительное свойство для выражения верхнего уровня ... Я использую VS2008 ... – user175084