1

データソースにバインドされた GridView があります。バインドされているデータベース行から行セル値 (bool) をチェックし、セル値が false に等しい行にボタンを表示する方法を知りたいと思っていました..

OndataBound イベントを使用して、バインドされている Gridview 行を取得しています。ID ショーを取得し、データベースに対して別の手順を実行して、対応するデータベース行からセルの値を見つけます。しかし、ボタンを追加する方法がわかりません。 ..

また、このシナリオを処理する他の方法はありますか?

4

1 に答える 1

1

解決策1:属性visible = falseを使用して、グリッドビュー内の目的の場所にIDを持つボタンを作成します。ボタンを表示するときはいつでも、ボタンを取得して(currentGridRow.FindControl("chosen button ID"))、その表示属性をtrueに設定します。

次のように、ボタンをテンプレートフィールドに配置します。

 <asp:TemplateField HeaderText="foobar" >
    <ItemTemplate>
    <asp:ImageButton ID="plusbutton" CssClass="cplusButton" ToolTip="plusButton" OnClick="buttonAdd_Click" runat="server" Visible = "false"/>
    </ItemTemplate>
</asp:TemplateField>

解決策2:ボタン(Button b = new Button; currentGridRow.Cell[].Controls.Add(b);)を動的に作成しますが、ビューステートとイベントハンドラーを処理するのは面倒です。そのように行かないでください。

于 2009-11-17T13:24:44.250 に答える