Поделиться через


MenuItemStyleCollection Класс

Определение

Представляет коллекцию MenuItemStyle объектов в элементе Menu управления. Этот класс не может быть унаследован.

public ref class MenuItemStyleCollection sealed : System::Web::UI::StateManagedCollection
public sealed class MenuItemStyleCollection : System.Web.UI.StateManagedCollection
type MenuItemStyleCollection = class
    inherit StateManagedCollection
Public NotInheritable Class MenuItemStyleCollection
Inherits StateManagedCollection
Наследование
MenuItemStyleCollection

Примеры

В следующем примере кода показано, как использовать MenuItemStyleCollection класс для указания параметров стиля для элементов меню в элементе Menu управления на основе уровня элемента меню. В этом примере LevelMenuItemStyles свойство создается декларативно, а один MenuItemStyle объект удаляется, а другой добавляется в MenuItemStyleCollection объект.


<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void Page_Load(Object sender, EventArgs e)
  {

    if (!IsPostBack)
    {

      // Use the Add and RemoveAt methods to programmatically 
      // remove the third level menu item style and replace 
      // it with a new style, in this case replacing the green background
        // and yellow text with the blue background and white text. 

        MenuItemStyle newStyle = new MenuItemStyle();
        newStyle.BackColor = System.Drawing.Color.Blue;
        newStyle.ForeColor = System.Drawing.Color.White;

        // Remove the last of the three menu item styles. Note that
        // since the collection has a zero-based index, the third
        // entry has an index value of 2.
        MainMenuID.LevelMenuItemStyles.RemoveAt(2);
        MainMenuID.LevelMenuItemStyles.Add(newStyle);

    }

  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemStyleCollection Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemStyleCollection Example</h3>
         <!--Add MenuItemStyle objects to the MenuItemStyleCollection -->
         <!--using LevelMenuItemStyles.  -->
         <!--Note that each menu item style represents a level in the menu -->

      <asp:Menu id="MainMenuID"
       Font-Names= "Arial"
        ForeColor="Blue"
        runat="server">
         
         <LevelMenuItemStyles>
         <asp:MenuItemStyle BackColor="Azure" 
             Font-Italic="true"
             Font-Names="Arial"
             ForeColor="Black" />
         
           <asp:MenuItemStyle BackColor="Black" 
             Font-Italic="false"
             Font-Names="Arial"
             ForeColor="White" />
             
         <asp:MenuItemStyle BackColor="Green" 
             Font-Italic="true"
             Font-Names="Arial"
             ForeColor="Yellow" />
       
         </LevelMenuItemStyles>

        <items>
          <asp:menuitem text="Home"
            tooltip="Home">
            <asp:menuitem text="Music"
              tooltip="Music">
              <asp:menuitem text="Classical"
                tooltip="Classical"/>
              <asp:menuitem text="Rock"
                tooltip="Rock"/>
              <asp:menuitem text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem text="Movies"
              tooltip="Movies">
              <asp:menuitem text="Action"
                tooltip="Action"/>
              <asp:menuitem text="Drama"
                tooltip="Drama"/>
              <asp:menuitem text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>

        
      </asp:Menu>

    </form>
  </body>
</html>

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

Sub Page_Load(ByVal sender As [Object], ByVal e As EventArgs) 
    
    If Not IsPostBack Then
        
        ' Use the Add and RemoveAt methods to programmatically 
        ' remove the third level menu item style and replace 
        ' it with a new style, in this case replacing the green background
        ' and yellow text with the blue background and white text. 
        Dim newStyle As New MenuItemStyle()
        newStyle.BackColor = System.Drawing.Color.Blue
        newStyle.ForeColor = System.Drawing.Color.White
        
        ' Remove the last of the three menu item styles. Note that
        ' since the collection has a zero-based index, the third
        ' entry has an index value of 2.
        MainMenuID.LevelMenuItemStyles.RemoveAt(2)
        MainMenuID.LevelMenuItemStyles.Add(newStyle)
    End If
 
End Sub 'Page_Load
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>MenuItemStyleCollection Example</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <h3>MenuItemStyleCollection Example</h3>
         <!--Add MenuItemStyle objects to the MenuItemStyleCollection -->
         <!--using LevelMenuItemStyles.   -->
         <!--Note that each menu item style represents a level in the menu -->

      <asp:Menu id="MainMenuID"
       Font-Names= "Arial"
        ForeColor="Blue"
        runat="server">
         
         <LevelMenuItemStyles>
         <asp:MenuItemStyle BackColor="Azure" 
             Font-Italic="true"
             Font-Names="Arial"
             ForeColor="Black" />
         
           <asp:MenuItemStyle BackColor="Black" 
             Font-Italic="false"
             Font-Names="Arial"
             ForeColor="White" />
             
         <asp:MenuItemStyle BackColor="Green" 
             Font-Italic="true"
             Font-Names="Arial"
             ForeColor="Yellow" />
       
         </LevelMenuItemStyles>

        <items>
          <asp:menuitem text="Home"
            tooltip="Home">
            <asp:menuitem text="Music"
              tooltip="Music">
              <asp:menuitem text="Classical"
                tooltip="Classical"/>
              <asp:menuitem text="Rock"
                tooltip="Rock"/>
              <asp:menuitem text="Jazz"
                tooltip="Jazz"/>
            </asp:menuitem>
            <asp:menuitem text="Movies"
              tooltip="Movies">
              <asp:menuitem text="Action"
                tooltip="Action"/>
              <asp:menuitem text="Drama"
                tooltip="Drama"/>
              <asp:menuitem text="Musical"
                tooltip="Musical"/>
            </asp:menuitem>
          </asp:menuitem>
        </items>

        
      </asp:Menu>

    </form>
  </body>
</html>

Комментарии

Класс MenuItemStyleCollection используется для хранения коллекции MenuItemStyle объектов в элементе управления и управления ими Menu . Элемент Menu управления использует MenuItemStyleCollection класс в качестве базового типа LevelMenuItemStyles данных и LevelSelectedStyles свойств.

LevelSelectedStyles Свойства LevelMenuItemStyles являются альтернативой отдельным свойствам стиля (напримерStaticMenuItemStyle). Эти свойства применяются к обычным пунктам меню и выбранному элементу меню соответственно на основе уровня элемента меню в меню. Первый стиль в коллекции соответствует стилю элемента меню первого уровня меню. Второй стиль в коллекции соответствует стилю элемента меню второго уровня и т. д. LevelSelectedStyles Свойства LevelMenuItemStyles чаще всего используются для создания меню, где элементы меню на определенном уровне имеют одинаковый внешний вид, независимо от того, имеют ли они подменю.

Класс MenuItemStyleCollection наследует большинство его членов от StateManagedCollection класса. Дополнительные сведения о унаследованных элементах см. в разделе StateManagedCollection.

Свойства

Имя Описание
Count

Возвращает количество элементов, содержащихся в StateManagedCollection коллекции.

(Унаследовано от StateManagedCollection)
Item[Int32]

Возвращает объект по указанному MenuItemStyle индексу из коллекции.

Методы

Имя Описание
Add(MenuItemStyle)

Добавляет указанный MenuItemStyle объект в конец текущей коллекции.

Clear()

Удаляет все элементы из StateManagedCollection коллекции.

(Унаследовано от StateManagedCollection)
Contains(MenuItemStyle)

Определяет, находится ли указанный MenuItemStyle объект в коллекции.

CopyTo(Array, Int32)

Копирует элементы StateManagedCollection коллекции в массив, начиная с определенного индекса массива.

(Унаследовано от StateManagedCollection)
CopyTo(MenuItemStyle[], Int32)

Копирует все элементы из MenuItemStyleCollection объекта в совместимый одномерный массив объектов, начиная с указанного MenuItemStyle индекса в целевом массиве.

CreateKnownType(Int32)

При переопределении в производном классе создает экземпляр класса, реализующего IStateManager. Тип создаваемого объекта основан на указанном элементе коллекции, возвращаемой методом GetKnownTypes() .

(Унаследовано от StateManagedCollection)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetEnumerator()

Возвращает итератор, который выполняет итерацию по StateManagedCollection коллекции.

(Унаследовано от StateManagedCollection)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetKnownTypes()

При переопределении в производном классе получает массив IStateManager типов, которые StateManagedCollection может содержать коллекция.

(Унаследовано от StateManagedCollection)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
IndexOf(MenuItemStyle)

Определяет индекс указанного MenuItemStyle объекта в коллекции.

Insert(Int32, MenuItemStyle)

Вставляет указанный MenuItemStyle объект в коллекцию по указанному расположению индекса.

MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
OnClear()

При переопределении в производном классе выполняет дополнительную работу перед Clear() удалением всех элементов из коллекции.

(Унаследовано от StateManagedCollection)
OnClearComplete()

При переопределении в производном классе выполняет дополнительную работу после Clear() завершения удаления всех элементов из коллекции.

(Унаследовано от StateManagedCollection)
OnInsert(Int32, Object)

При переопределении в производном классе выполняет дополнительную работу перед IList.Insert(Int32, Object)IList.Add(Object) добавлением элемента в коллекцию.

(Унаследовано от StateManagedCollection)
OnInsertComplete(Int32, Object)

При переопределении в производном классе выполняет дополнительную работу после IList.Insert(Int32, Object)IList.Add(Object) добавления элемента в коллекцию.

(Унаследовано от StateManagedCollection)
OnRemove(Int32, Object)

При переопределении в производном классе выполняет дополнительную работу перед IList.Remove(Object)IList.RemoveAt(Int32) удалением указанного элемента из коллекции.

(Унаследовано от StateManagedCollection)
OnRemoveComplete(Int32, Object)

При переопределении в производном классе выполняет дополнительную работу после IList.Remove(Object)IList.RemoveAt(Int32) удаления указанного элемента из коллекции.

(Унаследовано от StateManagedCollection)
OnValidate(Object)

При переопределении в производном классе проверяет элемент StateManagedCollection коллекции.

(Унаследовано от StateManagedCollection)
Remove(MenuItemStyle)

Удаляет указанный MenuItemStyle объект из коллекции.

RemoveAt(Int32)

Удаляет MenuItemStyle объект по указанному расположению индекса из коллекции.

SetDirty()

Принудительно сериализовать всю StateManagedCollection коллекцию в состояние просмотра.

(Унаследовано от StateManagedCollection)
SetDirtyObject(Object)

При переопределении в производном классе предписывает object коллекции записывать все его состояние для просмотра состояния, а не записи только сведений об изменении.

(Унаследовано от StateManagedCollection)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

Имя Описание
ICollection.Count

Возвращает количество элементов, содержащихся в StateManagedCollection коллекции.

(Унаследовано от StateManagedCollection)
ICollection.IsSynchronized

Возвращает значение, указывающее, синхронизирована ли StateManagedCollection коллекция (потокобезопасная). Этот метод возвращается false во всех случаях.

(Унаследовано от StateManagedCollection)
ICollection.SyncRoot

Возвращает объект, который можно использовать для синхронизации доступа к StateManagedCollection коллекции. Этот метод возвращается null во всех случаях.

(Унаследовано от StateManagedCollection)
IEnumerable.GetEnumerator()

Возвращает итератор, который выполняет итерацию по StateManagedCollection коллекции.

(Унаследовано от StateManagedCollection)
IList.Add(Object)

Добавляет элемент в коллекцию StateManagedCollection .

(Унаследовано от StateManagedCollection)
IList.Clear()

Удаляет все элементы из StateManagedCollection коллекции.

(Унаследовано от StateManagedCollection)
IList.Contains(Object)

Определяет, содержит ли StateManagedCollection коллекция определенное значение.

(Унаследовано от StateManagedCollection)
IList.IndexOf(Object)

Определяет индекс указанного элемента в StateManagedCollection коллекции.

(Унаследовано от StateManagedCollection)
IList.Insert(Int32, Object)

Вставляет элемент в StateManagedCollection коллекцию по указанному индексу.

(Унаследовано от StateManagedCollection)
IList.IsFixedSize

Возвращает значение, указывающее, имеет ли StateManagedCollection коллекция фиксированный размер. Этот метод возвращается false во всех случаях.

(Унаследовано от StateManagedCollection)
IList.IsReadOnly

Возвращает значение, указывающее, доступна ли StateManagedCollection коллекция только для чтения.

(Унаследовано от StateManagedCollection)
IList.Item[Int32]

Возвращает элемент по указанному IStateManager индексу.

(Унаследовано от StateManagedCollection)
IList.Remove(Object)

Удаляет первое вхождение указанного объекта из StateManagedCollection коллекции.

(Унаследовано от StateManagedCollection)
IList.RemoveAt(Int32)

Удаляет IStateManager элемент по указанному индексу.

(Унаследовано от StateManagedCollection)
IStateManager.IsTrackingViewState

Возвращает значение, указывающее, сохраняется ли StateManagedCollection коллекция изменений в состоянии представления.

(Унаследовано от StateManagedCollection)
IStateManager.LoadViewState(Object)

Восстанавливает ранее сохраненное состояние StateManagedCollection представления коллекции и IStateManager элементы, которые он содержит.

(Унаследовано от StateManagedCollection)
IStateManager.SaveViewState()

Сохраняет изменения в StateManagedCollection коллекции и каждый IStateManager объект, содержащийся с момента публикации страницы на сервер.

(Унаследовано от StateManagedCollection)
IStateManager.TrackViewState()

Приводит StateManagedCollection к тому, что коллекция и каждый из IStateManager объектов, содержащихся в нем, отслеживают изменения в состоянии представления, чтобы их можно было сохранять в запросах на одну и ту же страницу.

(Унаследовано от StateManagedCollection)

Методы расширения

Имя Описание
AsParallel(IEnumerable)

Включает параллелизацию запроса.

AsQueryable(IEnumerable)

Преобразует IEnumerable в IQueryable.

Cast<TResult>(IEnumerable)

Приведение элементов IEnumerable к указанному типу.

OfType<TResult>(IEnumerable)

Фильтрует элементы IEnumerable на основе указанного типа.

Применяется к

См. также раздел