你需要用到DataGrid的自定义编辑模板功能,将DataGrid的AutoGenerateColumns设为false;
然后,分别指定显示时的模板和编辑时的模板。
代码片段:
<Columns>
...
<asp:TemplateColumn HeaderText="StringValue">
<ItemTemplate>
<asp:Label id="lblStrValue" Text='<%#DataBinder.Eval(Container.DataItem,"StringValue")%>' runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id="tbxStrValue" Size="10" Text='<%#DataBinder.Eval(Container.DataItem,"StringValue")%>' runat="server"/>
</EditItemTemplate>
</asp:TemplateColumn>
...
</Columns> 我这里,还只是自定义了一个TextBox的宽度。在些基础,你可以自由控制TextBox了。
然后,分别指定显示时的模板和编辑时的模板。
代码片段:
<Columns>
...
<asp:TemplateColumn HeaderText="StringValue">
<ItemTemplate>
<asp:Label id="lblStrValue" Text='<%#DataBinder.Eval(Container.DataItem,"StringValue")%>' runat="server"/>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox id="tbxStrValue" Size="10" Text='<%#DataBinder.Eval(Container.DataItem,"StringValue")%>' runat="server"/>
</EditItemTemplate>
</asp:TemplateColumn>
...
</Columns> 我这里,还只是自定义了一个TextBox的宽度。在些基础,你可以自由控制TextBox了。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货