Stellen Sie Command Wählen Sie Sichtbarkeit von aspx Seite
-
16-09-2019 - |
Frage
Ich mag so etwas wie dies mit einem Gridview tun:
<asp:CommandField ShowSelectButton="True" Visible='<%# return Eval("SC_TABLE") %>' />
Aber das funktioniert nicht mit Fehlern kommen:
Datenbindung Ausdrücke sind nur auf Objekte unterstützt, die eine haben Databinding-Ereignis. System.Web.UI.WebControls.CommandField kein Databinding-Ereignis hat.
Gibt es trotzdem ich die Sichtbarkeit von der aspx Seite einstellen kann? PS: SC_TABLE besteht aus der Datenquelle, also nichts falsch von dem Teil
.Lösung
Sie können dies tun mit einer Template statt ...
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton runat="server" ID=SelectButton CommandName="SELECT" Visible='<%# Eval("SC_TABLE") %>' Text="Select" />
</ItemTemplate>
</asp:TemplateField>
Andere Tipps
fand ich die Antwort am Ende des diesen Beitrag :
Grundsätzlich müssen Sie das RowCreated Ereignis auf dem Datagrid erfassen
OnRowCreated = "GridView1_RowCreated"
Dann wird auf der aspx.cs Seite den folgenden Code Kontrollen zu verbergen:
protected void GridView1_RowCreated(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowIndex == 1)
{
e.Row.Cells[0].Controls.Clear();
}
}
Es funktioniert, wenn Sie ein Commandfield in der ersten Spalte haben.