Вы делаете его слишком сложным. Это - причина, каскад существует. Просто обеспечьте свои селекторы элемента и классифицируйте свой цвет:
h1 {
color: #000;
}
.a-theme-color {
color: #333;
}
Тогда применяют его к элементам в HTML, переопределяя, когда необходимо использовать цвета темы.
<h1>This is my heading.</h1>
<h1 class="a-theme-color">This is my theme heading.</h1>
Предполагается, что структура имеет свойство с именем MPH:
cars = cars.OrderBy(Function(c) c.MPH)
Примечание: приведенный выше код был автоматически преобразован из следующего кода C # (в случае, если он содержит ошибки):
cars = cars.OrderBy(c => c.MPH);
Я не знаю VB.NET, но у вас должно получиться это сделать с помощью IComparer. Взгляните на этот пример
http://www.java2s.com/Code/VB/Data-Structure/UseIComparertosortbydifferentproperties.htm
В качестве альтернативы вы также можете использовать Linq
Самый простой способ выполнить сортировку - использовать LINQ to Objects.
Dim q = From c In cars Order By c.MPH Select c
Другая возможность, которая не использует Linq, а вместо этого использует метод сортировки класса .Net Array:
Module Module1
Structure stCar
Dim Name As String
Dim MPH As String
Sub New(ByVal _Name As String, ByVal _MPH As Integer)
Name = _Name
MPH = _MPH
End Sub
End Structure
Class CarCompareMph : Implements IComparer
Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer Implements System.Collections.IComparer.Compare
Dim xCar As stCar = DirectCast(x, stCar)
Dim yCar As stCar = DirectCast(y, stCar)
Return New CaseInsensitiveComparer().Compare(xCar.MPH, yCar.MPH)
End Function
End Class
Sub Main()
Dim cars() As stCar = {New stCar("honda", 50), New stCar("ford", 10)}
Array.Sort(cars, New CarCompareMph)
For Each c As stCar In cars
Console.WriteLine("{0} - {1} MPH", c.Name, c.MPH)
Next
End Sub
End Module
Я не уверен, что вы ищете, но это другой подход.