0

私は列を持つグリッドビューを持っています

日時名ステータス

列レコードを更新する必要があるため、次を使用しました:

<asp:CommandField ShowEditButton="true" ButtonType="Link" EditText="Edit" ShowHeader="true" HeaderText="Edit" HeaderStyle-Font-Bold="true" Visible="true"> <HeaderStyle Font-Bold="True" />
</asp:CommandField>

行編集イベントでは:

 protected void GrdDynamicControls_RowEditing(object sender, GridViewEditEventArgs e)
{

GrdDynamicControls.EditIndex = e.NewEditIndex;
}

デフォルトで編集コマンドを押すと、テキストボックスのみが表示されますが、編集モードで表示するには日付ピッカーとチェックボックスが必要です。それをもたらす方法。

何か案が???

4

1 に答える 1

0

ItemTemplate で Label と CheckBox を含む TemplateField を使用し、EditTemplate でAjaxControlToolkit DatePicker と CheckBoxを含む TextBox を使用することをお勧めします。

<%@ Register TagPrefix="ajaxtoolkit" Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit"  %>

<head runat="server">
    <title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager runat="server" ID="ScriptManager" />
<div>
<asp:GridView runat="server" ID="MyGridView">
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:Label runat="server" ID="DisplayLabel" Text='<%# Eval("DateDataItem") %>' />
                <asp:CheckBox runat="server" ID="DisplayCheckBox" Checked='<%# Eval("BooleanDataItem %>' />
            </ItemTemplate>
            <EditItemTemplate>
                <asp:TextBox runat="server" ID="EditTextBox" Text='<%# Eval("DateDataItem") %>' />
                <ajaxtoolkit:CalendarExtender runat="server" ID="EditTextBoxCalendarExtender" TargetControlID="EditTextBox" />
                <asp:CheckBox runat="server" ID="DisplayCheckBox" Checked='<%# Eval("BooleanDataItem %>' /> 
            </EditItemTemplate>
       </asp:TemplateField>
       <asp:CommandField ShowEditButton="true" ButtonType="Link" EditText="Edit" 
ShowHeader="true" HeaderText="Edit" HeaderStyle-Font-Bold="true" Visible="true" HeaderStyle-Font-Bold="True" />

    </Columns>
</asp:GridView>
于 2010-06-28T21:56:25.443 に答える