Предполагая, что у вас нет отображаемых значений в БД, это способ реализации части рендеринга. Может быть более удобный способ хранения значений поиска, если кто-то может внести свой вклад, я был бы признателен.
Я написал это в блокноте, поскольку у меня на компьютере нет Visual Studio. Пожалуйста, извините, если есть какие-либо синтаксические ошибки.
Markup:
<asp:Label ID="lblPriority" Text='<%# RenderPriority(DataBinder.Eval(Container.DataItem,"Priority")) %>' runat="server" />
Код:
Protected Function RenderPriority(ByVal dbValue As Object) As String
Dim strReturn as String = String.Empty
If Not IsDbNull(dbValue) Then
Dim intValue as Integer
If Integer.TryParse(dbValue, intValue) Then
Select Case intValue
Case 0
strReturn = "not set"
Case 1
strReturn = "low"
Case 2
strReturn = "medium"
Case 3
strReturn = "high"
End Select
Else
strReturn = dbValue.ToString()
End If
End If
Return strReturn
End Function
Edit:
После перечитывания вашего вопроса у меня сложилось впечатление, что вы предпочли бы избегать написания определенной функции для этой цели на странице кода кода. Если это так, вам, вероятно, следует сохранить строки, которые вы хотите связать со значениями ключей, в БД и извлечь их с помощью оператора SQL. Или, по крайней мере, протолкнуть функциональность на уровень доступа к данным. В любом случае, в идеале столбец GridView
будет представлен требуемой строкой в соответствии с источником данных.