为什么这个布尔字符串格式不起作用?

Cur*_*urt 2 vb.net gridview boolean string-formatting asp.net-3.5

我目前有以下内容GridView TemplateField:

<asp:TemplateField HeaderText="Despatched">
    <ItemTemplate><%# IIf(Eval("Despatched"), "Yes", "No")%></ItemTemplate>
</asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我已经读过我可以做以下事情,我觉得这很整洁:

<asp:BoundField HeaderText="Despatched" DataField="Despatched" DataFormatString="{0:Yes;No}" />
Run Code Online (Sandbox Code Playgroud)

但是,这仍然返回True/False值而不是Yes/No

为什么这不起作用?

谢谢.

Sim*_*ier 8

AFAIK,bool.ToString()不支持自定义格式字符串,例如{0:是;否},虽然我真的承认这将是一个好主意:-)

以下代码:

    bool b = true;
    Console.WriteLine("{0:Yes;No}", b);
Run Code Online (Sandbox Code Playgroud)

始终显示您使用的.NET框架版本(2,3,4).