如何用文本替换 gridview 中的复选框?
我有以下 gridview:
<asp:GridView ID="gdvReport" runat="server" AutoGenerateColumns="False" DataSourceID="sdseport">
<Columns>
<asp:BoundField DataField="Phone" HeaderText="Phone" SortExpression="Phone">
<ControlStyle Width="250px" />
</asp:BoundField>
<asp:BoundField DataField="ToCall" HeaderText="Foramt" SortExpression="ToCall" />
</Columns>
</asp:GridView>
第二行是数据库中的布尔值,但我不想向用户显示复选框或 true\false。
我该如何显示类似的内容? 0 = 不呼叫 1 = 致电我们
I have the following gridview:
<asp:GridView ID="gdvReport" runat="server" AutoGenerateColumns="False" DataSourceID="sdseport">
<Columns>
<asp:BoundField DataField="Phone" HeaderText="Phone" SortExpression="Phone">
<ControlStyle Width="250px" />
</asp:BoundField>
<asp:BoundField DataField="ToCall" HeaderText="Foramt" SortExpression="ToCall" />
</Columns>
</asp:GridView>
The second row is a bool in the database, but I do not want to show a checkbox or true\false to the users.
How do I display something like this instead?
0 = Don't Call
1 = Call Us
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您可以创建 TemplateField 而不是 BoundField。
然后,您可以内嵌一些代码来显示所需的文本或处理 RowDataBound 事件以执行逻辑。
You could create a TemplateField instead of a BoundField.
You could then put some code inline to display the text that you want or handle the RowDataBound event to do the logic there.
我最终只是使用 OnRowDataBound 来实现此目的。
现在效果很好。
I ended up just using OnRowDataBound for this.
And it is working great now.
我这样做了,它起作用了,
这是重要的部分。
Text='<%#Eval("isActive")==DBNull.Value?"inactive":Convert.ToBoolean(Eval("isActive"))?"active":"inactive" %>'
希望有帮助。
I did this and it work
This is the important part.
Text='<%#Eval("isActive")==DBNull.Value?"inactive":Convert.ToBoolean(Eval("isActive"))?"active":"inactive" %>'
Hope that helps.
您应该在 sql 中执行此操作,而不是在此处使用 CASE 语句执行此操作
例如
,然后使用一个简单的绑定字段,例如
You should do it in the sql instead of doing it here using a CASE statement
such as
and then use a simple bound field such as