asp.net – gridview显示文本而不是值
发布时间:2020-12-16 06:37:31 所属栏目:asp.Net 来源:网络整理
导读:我的问题是: 我的表由以下值组成:0,1,2 3 但是当gridview加载时我希望显示文本而不是那些数字. 0 = not set,1 = low,2 = medium,3 = high 我可以像if / else条件那样做,但我只是想寻找一个优化的sol. 这是我的标记gridview: asp:TemplateField HeaderText
我的问题是:
我的表由以下值组成: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> 解决方法
假设您没有在任何地方存储在DB中的显示值,这是一种可以实现渲染部分的方法.可能有一种更可维护的方式来存储查找值,如果有人可以贡献我会很感激.
我在记事本中写了这个,因为我的机器上没有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-core – 如何在asp.net核心中修改HttpContext.Requ
- asp.net-mvc – LINQ to Entities无法识别方法异常
- asp.net-mvc-4 – 部署到IIS 7后,ASP.NET MVC 4 webapplica
- asp.net – 访问.NET中的Web服务中的查询字符串(GET请求数组
- asp.net – System.Web.Cache,会话级别或应用程序级别
- asp.net-mvc – ViewModel中的ASP.NET MVC SelectList
- ASP.NET Core 依赖注入(DI)
- ASP.net网站发布版本包括pdb文件.我该如何摆脱它们?
- asp.net-mvc – 编辑器模板和部分视图之间有什么区别?
- ASP.NET Core 2.0 入门