将TemplateField的可见性绑定到BoundField的内容

时间:2012-09-13 08:04:56

标签: asp.net data-binding gridview webforms

TemplateField的“Visible”-Tag中的(伪代码)表达式是我想要实现的,任何想法? 我真的很想以声明的方式去做。没有OnRowCreated事件处理,Cells [x],...

            <asp:GridView ID="GridViewTest" runat="server" AutoGenerateColumns="false">
                <Columns>
                    <asp:BoundField DataField="MyProperty" HeaderText="My Property" />
                    <asp:TemplateField Visible="<%# MyProperty == 'VisibleString' %>">
                        <ItemTemplate>
                            <asp:ImageButton ID="ImageButton1" runat="server" AlternateText="" ImageUrl="" OnClick="ImageButton1_Click" />
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>

1 个答案:

答案 0 :(得分:3)

无法在TemplateField列本身上执行此操作,因为它没有DataBinding支持。我不得不在ImageButton中做到这一点。现在它完美无缺:

<asp:ImageButton Visible='<%# Eval("MyProperty") == "VisibleString" %>' [...] />