DevExpress Asp.net(8) ASPxTreeList的基本使用之二
2009-07-25 10:00
447 查看
此事例主要说明了使用ASPxTreeListTemplateReplacement类进行AspxTreeList的模板编辑:
ASPxTreeList的模板编辑中使用到了ASPxTreeListTemplateReplacement类,
可以按照指定的类型显示模板中的编辑表格或按钮。ReplacementType取值为
TreeListEditFormTemplateReplacementType。
TreeListEditFormTemplateReplacementType 说明:
根据指定的类型显示ASPxTreeListTemplateReplacement中显示的内容。
CancelButton: 显示Cancel button.
Content: 显示编辑的字段内容(Visible=true)与button(Cancel Update)
Editors: 显示编辑的字段内容(Visible=true).
UpdateButton: 显示Update button.
本事例中,ASPxTreeListTemplateReplacement控件分别生成并显示了编辑内容与
Updata/Cancel按钮。
类似的用法也在ASPxGridView控件中出现,如ASPxGridViewTemplateReplacement类。
其他数据绑定如:Text='<%# Eval("Text") %>'则与之前用到的绑定语法相同。因为此事例中
用到了自定义绑定显示,所以必须在ASPxTreeList的NodeInserting事件与NodeUpdataing事件
中执行以下代码:e.NewValues["Text"]="";
代码:
ASPxTreeList的模板编辑中使用到了ASPxTreeListTemplateReplacement类,
可以按照指定的类型显示模板中的编辑表格或按钮。ReplacementType取值为
TreeListEditFormTemplateReplacementType。
TreeListEditFormTemplateReplacementType 说明:
根据指定的类型显示ASPxTreeListTemplateReplacement中显示的内容。
CancelButton: 显示Cancel button.
Content: 显示编辑的字段内容(Visible=true)与button(Cancel Update)
Editors: 显示编辑的字段内容(Visible=true).
UpdateButton: 显示Update button.
本事例中,ASPxTreeListTemplateReplacement控件分别生成并显示了编辑内容与
Updata/Cancel按钮。
类似的用法也在ASPxGridView控件中出现,如ASPxGridViewTemplateReplacement类。
其他数据绑定如:Text='<%# Eval("Text") %>'则与之前用到的绑定语法相同。因为此事例中
用到了自定义绑定显示,所以必须在ASPxTreeList的NodeInserting事件与NodeUpdataing事件
中执行以下代码:e.NewValues["Text"]="";
代码:
<dxwtl:ASPxTreeList ID="ASPxTreeList1" runat="server" Width="498px" DataSourceID="ObjectDataSource1" KeyFieldName="ID" ParentFieldName="ParentID" OnNodeInserting="ASPxTreeList1_NodeInserting" OnNodeUpdating="ASPxTreeList1_NodeUpdating"> <SettingsEditing Mode="EditFormAndDisplayNode" /> <Templates> <EditForm> <dxtc:ASPxPageControl ID="ASPxPageControl1" runat="server" ActiveTabIndex="0" Height="150px" Width="513px"> <TabPages> <dxtc:TabPage Text="Header"> <ContentCollection> <dxw:ContentControl ID="ContentControl1" runat="server"> <dxwtl:ASPxTreeListTemplateReplacement ID="ASPxTreeListTemplateReplacement1" runat="server" ReplacementType="Editors" /> </dxw:ContentControl> </ContentCollection> </dxtc:TabPage> <dxtc:TabPage Text="Text"> <ContentCollection> <dxw:ContentControl ID="ContentControl2" runat="server"> <dxe:ASPxMemo ID="ASPxMemo1" runat="server" Height="150px" Width="100%" Text='<%# Eval("Text") %>'> </dxe:ASPxMemo> </dxw:ContentControl> </ContentCollection> </dxtc:TabPage> </TabPages> </dxtc:ASPxPageControl> <dxwtl:ASPxTreeListTemplateReplacement ID="ASPxTreeListTemplateReplacement2" runat="server" ReplacementType="CancelButton" /> <dxwtl:ASPxTreeListTemplateReplacement ID="ASPxTreeListTemplateReplacement3" ReplacementType="UpdateButton" runat="server" /> </EditForm> </Templates> <Columns> <dxwtl:TreeListTextColumn FieldName="From" VisibleIndex="0"> <EditFormSettings VisibleIndex="0" /> </dxwtl:TreeListTextColumn> <dxwtl:TreeListTextColumn FieldName="Subject" VisibleIndex="1"> <EditFormSettings VisibleIndex="2" ColumnSpan="2" /> </dxwtl:TreeListTextColumn> <dxwtl:TreeListDateTimeColumn FieldName="Date" VisibleIndex="2"> <EditFormSettings VisibleIndex="1" /> </dxwtl:TreeListDateTimeColumn> <dxwtl:TreeListCommandColumn ShowNewButtonInHeader="True" VisibleIndex="3"> <EditButton Visible="True" /> <NewButton Visible="True" /> </dxwtl:TreeListCommandColumn> </Columns> </dxwtl:ASPxTreeList> <asp:ObjectDataSource ID="ObjectDataSource1" runat="server" DataObjectTypeName="DxNewsGroupEntry" TypeName="DxNewsGroupSessionProvider" DeleteMethod="Delete" InsertMethod="Insert" SelectMethod="Select" UpdateMethod="Update"></asp:ObjectDataSource>
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { DxNewsGroupSessionProvider.Restore(); this.ASPxTreeList1.DataBind(); ASPxTreeList1.ExpandToLevel(3); ASPxTreeList1.StartEdit("1"); } } protected void ASPxTreeList1_NodeInserting(object sender, DevExpress.Web.Data.ASPxDataInsertingEventArgs e) { e.NewValues["Text"] = ExtractMemoValue(); } protected void ASPxTreeList1_NodeUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e) { e.NewValues["Text"] = ExtractMemoValue(); } string ExtractMemoValue() { ASPxPageControl pageControl = ASPxTreeList1.FindEditFormTemplateControl("ASPxPageControl1") as ASPxPageControl; ASPxMemo memo = pageControl.TabPages[1].FindControl("ASPxMemo1") as ASPxMemo; return memo.Text; }
相关文章推荐
- DevExpress Asp.net(7) ASPxTreeList的基本使用之一
- DevExpress Asp.net ASPxTreeList的基本使用之一
- DevExpress Asp.net ASPxTreeList的基本使用之一
- DevExpress Asp.net(7) ASPxTreeList的基本使用之一
- DevExpress ASP.NET 使用经验谈(7)-ASPxTreeList控件使用
- DevExpress Asp.net(4) ASPxCallbackPanel的基本使用
- DevExpress Asp.net(9) ASPxHiddenField的特性与基本使用
- DevExpress Asp.net(5) ASPxCloudControl的基本使用
- DevExpress Asp.net(4) ASPxCallbackPanel的基本使用
- Devexpress ASP.NET中ASPxTreeList节点的拖动
- DevExpress Asp.net(5) ASPxCloudControl的基本使用
- DevExpress Asp.net(6) ASPxLoadingPanel的基本使用
- DevExpress ASP.NET 使用经验谈(8)-ASPxGridView自定义列和基本事件
- DevExpress Asp.net(6) ASPxLoadingPanel的基本使用
- DevExpress Asp.net(9) ASPxHiddenField的特性与基本使用
- DevExpress Asp.net(1) ASPxButton的基本使用
- DevExpress控件使用系列--ASPxTreeList
- DevExpress ASP.NET 使用经验谈(5)-通过ASPxGridView实现CRUD操作
- ASP.NET WebForm也玩强类型URL调用之二:PageMethods的基本使用
- .net ASPxTreeList 使用手记