Jul 11, 2013, 3:18 PM
[CLOSED] render treecolumn problem
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="role_menu.aspx.cs" Inherits="extdemo.admin.pages.role_menu" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script>
var roleRenderer = function (value) {
if (!Ext.isEmpty(value)) {
return App.store_role1.getById(value).data.rolename;
}
return value;
};
var menuRenderer = function (value) {
if (value != null && value != '') {
var r = App.store_menu.getNodeById(value);
if (!Ext.isEmpty(r)) {
return r.data.text;
}
}
};
var fn1 = function(value) {
this.field.onTriggerClick();
App.btn_save.setDisabled(false);
};
</script>
</head>
<body>
<form id="form1" runat="server">
<ext:ResourceManager ID="ResourceManager1" runat="server"></ext:ResourceManager>
<ext:GridPanel runat="server" ID="gp_role" Title="角色菜单管理">
<TopBar>
<ext:Toolbar ID="Toolbar1" runat="server">
<Items>
<ext:Button ID="btn_add" runat="server" Icon="Add" Text="新增">
<Listeners>
<Click Handler="App.store_role.insert(0,{rolename:'新角色'});App.btn_save.enable();"></Click>
</Listeners>
</ext:Button>
<ext:Button runat="server" Text="删除" Icon="Delete" ID="btn_del">
<Listeners>
<Click Handler="var selection = #{RowSelectionModel}.getSelection();
if (selection) {
#{gp_role}.store.remove(selection);
};App.btn_save.enable();" />
</Listeners>
</ext:Button>
<ext:Button ID="btn_save" runat="server" Icon="Disk" Text="确定" Disabled="True">
<DirectEvents>
<Click OnEvent="e_save" Before="return #{store_role}.isDirty();">
<ExtraParams>
<ext:Parameter Name="data" Value="#{store_role}.getChangedData()" Mode="Raw" Encode="true" />
</ExtraParams>
</Click>
</DirectEvents>
</ext:Button>
</Items>
</ext:Toolbar>
</TopBar>
<Store>
<ext:Store runat="server" ID="store_role">
<Proxy>
<ext:AjaxProxy Url="~/admin/pages/role_menu_handler.ashx">
<ActionMethods Read="GET"></ActionMethods>
<Reader>
<ext:JsonReader Root="data" />
</Reader>
</ext:AjaxProxy>
</Proxy>
<Model>
<ext:Model ID="Model1" runat="server" IDProperty="id">
<Fields>
<ext:ModelField runat="server" Name="id">
</ext:ModelField>
<ext:ModelField runat="server" Name="roleid"></ext:ModelField>
<ext:ModelField runat="server" Name="menuid"></ext:ModelField>
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<ColumnModel>
<Columns>
<ext:RowNumbererColumn ID="RowNumbererColumn1" runat="server" />
<ext:Column ID="Column1" runat="server" DataIndex="id" Text="编号"></ext:Column>
<ext:Column ID="Column2" runat="server" Text="角色" DataIndex="roleid" Flex="1">
<Renderer Fn="roleRenderer" />
<Editor>
<ext:SelectBox runat="server" ID="cb_role" DisplayField="rolename" ValueField="id">
<Store>
<ext:Store runat="server" ID="store_role1">
<Model>
<ext:Model ID="Model2" runat="server">
<Fields>
<ext:ModelField runat="server" Name="id"></ext:ModelField>
<ext:ModelField runat="server" Name="rolename"></ext:ModelField>
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
</ext:SelectBox>
</Editor>
<EditorOptions>
<Listeners>
<StartEdit Fn="fn1" Delay="1" />
</Listeners>
</EditorOptions>
</ext:Column>
<ext:Column ID="Column3" runat="server" DataIndex="menuid" Flex="1" Text="菜单">
<Renderer Fn="menuRenderer"></Renderer>
<Editor>
<ext:DropDownField runat="server" Mode="ValueText" TriggerIcon="SimpleArrowDown">
<Component>
<ext:TreePanel ID="TreePanel1" runat="server" RootVisible="false" Animate="true" AutoScroll="true" >
<Store>
<ext:TreeStore runat="server" ID="store_menu">
<Proxy>
<ext:AjaxProxy Url="../handlers/Handler_menu1.ashx">
</ext:AjaxProxy>
</Proxy>
<Model>
<ext:Model ID="Model3" runat="server" IDProperty="id">
<Fields>
<ext:ModelField runat="server" Name="id"></ext:ModelField>
<ext:ModelField runat="server" Name="name"></ext:ModelField>
</Fields>
</ext:Model>
</Model>
</ext:TreeStore>
</Store>
<ColumnModel>
<Columns>
<ext:TreeColumn ID="TreeColumn1" runat="server" Text="名称" DataIndex="name" Flex="1">
</ext:TreeColumn>
</Columns>
</ColumnModel>
<Listeners>
</Listeners>
</ext:TreePanel>
</Component>
</ext:DropDownField>
</Editor>
</ext:Column>
</Columns>
</ColumnModel>
<BottomBar>
<ext:PagingToolbar ID="PagingToolbar1" runat="server">
</ext:PagingToolbar>
</BottomBar>
<Plugins>
<ext:CellEditing ID="CellEditing1" runat="server" ClicksToEdit="1" />
</Plugins>
<SelectionModel>
<ext:RowSelectionModel ID="RowSelectionModel" Mode="Multi" runat="server" />
</SelectionModel>
</ext:GridPanel>
</form>
</body>
</html>
Last edited by Daniil; Jul 23, 2013 at 12:57 PM.
Reason: [CLOSED]