1

我在 .aspx 文件中有如下文本框代码

 <telerik:GridTemplateColumn  UniqueName="Format" HeaderText="Format" DataField="SystemMessageTextId" HeaderStyle-Width="60">
                <ItemTemplate>
                        <asp:Label runat="server" ID="lblFormat" Text='<%# Eval("Format") %>'></asp:Label>
                </ItemTemplate>
                <EditItemTemplate>
                    <asp:TextBox runat="server" ID="txtFormat" Text='<%# Bind("Format") %>' MaxLength="255"></asp:TextBox>
                    <span style="color: Red">*&nbsp;
                        <asp:RequiredFieldValidator ID="rfFormat" runat="server" ErrorMessage = "Please enter a valid Format value." ControlToValidate="txtFormat" Display="Dynamic"></asp:RequiredFieldValidator>
                    </span>
                </EditItemTemplate>
            </telerik:GridTemplateColumn>

.aspx.cs 文件如下所示

 if ((e.Item is GridEditableItem) && (e.Item.IsInEditMode))

 {
        GridEditableItem edititem = (GridEditableItem)e.Item;
       ((TextBox)(edititem["Format"].FindControl("txtFormat"))).Text = "pdf";
 }

我在 GridItemCreated 函数中有这部分,但是当我尝试它时,默认值不会显示。有人可以帮我弄这个吗?谢谢

4

2 回答 2

1

请尝试使用以下代码片段。

protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
{
    if (e.Item is GridEditableItem && e.Item.IsInEditMode)
    {
        GridEditableItem item = e.Item as GridEditableItem;
        TextBox txtFormat = (item.FindControl("txtFormat") as TextBox);
        txtFormat.Text = "Your text";
    }
}

如果您想分配/访问数据,那么最好使用 ItemDataBound 事件。假设您想将 textchanged 事件分配给 Textbox,那么如果我们必须使用 ItemCreated 事件。

于 2012-12-01T04:05:39.867 回答
0

请在 gridview 的文本框中输入 Text="0" 以设置默认值 0。

于 2017-09-21T07:45:44.873 回答