欢迎光临
我们一直在努力

关于DataGrid Web控件的热门问题__连载之二-.NET教程,数据库应用

建站超值云服务器,限时71元/月

在显示和编辑模式下自定义列的外观

   默认情况下,datagrid用预设大小的列显示数据。当你将行设置为编辑模式时,该控件将所有可编辑数据显示在textbox中,不管是什么类型的数据。

       如果你想自定义列的内容,则将列设定为模板列,模板列的工作方式与dataist或者repeater控件中的项模板类似。差别之处仅在于你定义的是列的外观不是行的外观。

定义模板列的时候,可以具体设定下面这些模板类型:

①   使用项模板来自定义数据的一般外观。

②   将行设为编辑模式时使用编辑项模板来具体设定列的显示。它允许你具体设置一个控件而不是编辑模式下默认的textbox.

③   header模板和footer模板允许你分别自定义控件的header和footer.(只有将datagrid的showfoot属性设为true,才会显示表的尾部。)

   下面的例子是一个显示布尔数据的模板列的html语法。项模板和编辑模板都使用一个checkbox来显示值。项模板中的checkbox是不可用的,使用者就不能勾选它,而在编辑项模板中checkbox好似允许用户选择的。

  <columns>

<asp:templatecolumn headertext=”discontinued”>

<itemtemplate>

  <asp:checkbox runat =”server”enabled=false name=”checkbox2”

  id=”checkbox2”

  checked=’<%#databinder.eval(container,”dataltem.discontinued”)%>’>

  </asp:checkbox>

  </itemtemplate>

  <editltemtemplate>

<asp:checkbox

   runat=”server”name=”checkbox2”id=”checkbox2”

   checked=’<%#databinder.eval(container,”dataitem.discontinued”)%>’>

</asp:checkbox>

  </editltemtemplate>

  </asp:templatecolumn>

  </columns>

注意:如果在编辑模板中使用一个checkbox,要意识到在运行时,表项单元格实际上还包含了除了checkbox自身以外的几个literalcontrol控件,任何时候你知道了你想要的值的控件的id,使用findcontrol方法来创建对它的引用,而不是使用它在单元格集合或者控件集合的特定的索引值。

checkbox cb;

cb=(checkbox)e.item.findcontrol(“checkbox2”);

在vs中。可以使用datagrid的属性生成器来创建模板列,并使用模板编辑器来具体设定它的外观,在属性窗口页的列选择中,选中该列并单击底部的“将该列转化为模板列”,关闭属性窗口,右击该datagrid并选择“编辑模板”,然后,你就可以从工具箱拖拽控件到模板中,也可以增加静态文本。

(unfinished)

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 关于DataGrid Web控件的热门问题__连载之二-.NET教程,数据库应用
分享到: 更多 (0)