gpt4 book ai didi

asp.net - gridview 显示文本而不是值

转载 作者:行者123 更新时间:2023-12-02 18:30:46 25 4
gpt4 key购买 nike

我的问题是:

我的表格由以下值组成:0, 1, 2 3

但是当 gridview 加载时,我希望显示文本而不仅仅是那些数字。

0 = not set, 1 = low, 2 = medium, 3 = high

我可以像 if/else 条件那样做到这一点,但我只是想寻求优化的 sol。

这是我的标记 GridView :

<asp:TemplateField  HeaderText="Priority" SortExpression="Priority" >
<ItemTemplate>
<asp:Label ID="lblPriority" Text='<%# DataBinder.Eval(Container.DataItem,"Priority")%>' runat="server" />
</ItemTemplate>

最佳答案

假设您没有将显示值存储在数据库中的任何位置,这是您实现渲染部分的一种方法。可能有一种更易于维护的方式来存储查找值,如果有人可以贡献我将不胜感激。

我用记事本写了这个,因为我的机器上没有 Visual Studio。如果有任何语法错误,请原谅。

标记:

<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
<小时/>

编辑:

重新阅读您的问题后,我得到的印象是您希望避免在代码隐藏页面中为此目的编写特定函数。如果是这种情况,您可能应该将想要与键值关联的字符串存储在数据库中,并通过 SQL 语句将它们取出。或者,至少将功能插入数据访问层。无论哪种方式,理想情况下,GridView 列都将通过其数据源显示所需的字符串。

关于asp.net - gridview 显示文本而不是值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6702062/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com