`
jueyue
  • 浏览: 195394 次
社区版块
存档分类
最新评论

DataGrid的TextInput无法获取焦点问题

    博客分类:
  • flex
阅读更多

今天在对DataGrid的进行数据编辑是利用渲染器加入了TextInput空间,但是只要点中就会出现

scroll的焦点获取失败即:

有一个困扰多时的问题:
flex4,spark组件的
datagrid的itemrenderer中使用textinput组件,鼠标点击后报错:
TypeError: Error #1009: 无法访问空对象引用的属性或方法。
        at spark.components::Scroller/focusInHandler()
        at flash.display::Stage/set focus()
        at flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::setFocus()
        at flashx.textLayout.container::ContainerController/mouseDownHandler()
        at flashx.textLayout.container::TextContainerManager/mouseDownHandler()
        at spark.components.supportClasses::RichEditableTextContainerManager/mouseDownHandler()
        at flashx.textLayout.container::ContainerController/http://ns.adobe.com/textLayout/internal/2008::requiredMouseDownHandler()
        at flash.events::EventDispatcher/dispatchEventFunction()
        at flash.events::EventDispatcher/dispatchEvent()
        at mx.core::UIComponent/dispatchEvent()
        at mx.managers::SystemManager/mouseEventHandler()[E:\dev\4.y\frameworks\projects\framework\src\mx\managers\SystemManager.as:2918]

 一开始以为是DataGrid的原因各种查找,虽然也利用这个查找过程学会了很多DataGrid的知识但是结果,

却和DataGrid无关的,是PopUpAnchor的问题,

   我这个DataGrid是PopUp弹出的,最外层使用的是Group但是group没有实现mx.managers.IFocusManagerContainer这个接口,对于这个接口官方说明是:

The IFocusManagerContainer interface defines the interface that containers implement to host a FocusManager. The PopUpManager automatically installs a FocusManager in any IFocusManagerContainer it pops up.

 就是实现了这个接口的容器,PopUpManager会自动注入一个FocusManager实例进去,但是坑爹事Group并没有实现,而且Group是渲染器和其他的组件最常用的容器,所以会报出如果获取FocusManager 即 focusManager=null,只需改成实现IFocusManagerContainer这个接口的容器就可以了,这里我用的

BorderContainer,改了之后就不会再报错了,坑爹的玩意啊 

分享到:
评论

相关推荐

    DataGrid全选并获取选中条目数

    本文将深入探讨如何实现DataGrid的全选功能,并详细讲解如何获取选中条目数。 首先,我们要了解DataGrid的基本操作。DataGrid通常与数据源绑定,例如数据库、数组或集合。它允许用户浏览、编辑和操作数据。全选功能...

    WPF中DataGrid得到其中一行的值

    当我们需要从`DataGrid`中获取特定行或单元格的值时,通常会涉及到数据绑定和事件处理。下面我们将详细探讨如何在WPF中实现这个功能。 1. 数据绑定基础 在WPF中,数据绑定是连接UI元素和数据源的关键机制。`...

    easyui datagrid中update后 getChanges获取不到

    一个update扩展方法 文档中一种是比较笨的方法 一次只能修改一个列而且受列编辑类型影响(比如number datetime)扩展一次编辑多列,不受编辑类型影响,没有编辑属性也可以。

    WPF中DataGrid的空白行使用方法

    在Windows Presentation Foundation (WPF) 中,`DataGrid` 是一个强大的控件,用于显示和编辑数据集。本文将深入探讨如何在`DataGrid`中使用空白行,这对于某些应用场景,如添加新记录或保留用户输入的空间,是很...

    DataGrid中嵌套DataGrid

    3. 进行事件处理:主DataGrid的ItemDataBound事件是一个关键的事件,可以在其中获取到内部DataGrid需要的数据,并对其进行绑定。 4. 处理分页和排序:嵌套的DataGrid可能需要独立的分页和排序功能,这需要在事件处理...

    jeasyui-datagrid-datagrid

    本文将深入探讨JeasyUI DataGrid的使用方法、特性以及常见问题的解决方案。 1. **JeasyUI DataGrid介绍** JeasyUI是基于jQuery的UI库,提供了一系列易于使用的组件,如Dialog、Form、DataGrid等。DataGrid作为其中...

    DataGrid里嵌套下拉列表

    在.NET框架或者WPF(Windows Presentation Foundation)应用开发中,`DataGrid`控件是一个非常常用的组件,用于展示和编辑表格数据。它提供了丰富的功能,包括排序、分页、筛选等。而“DataGrid里嵌套下拉列表”是一...

    DataGrid中嵌入comBox

    在Windows Presentation Foundation(WPF)开发中,DataGrid控件是一种强大的工具,用于展示和编辑表格数据。在某些场景下,我们可能需要在DataGrid的某一列中嵌入ComboBox控件,以提供用户多选或者下拉选择的功能。...

    EasyUI Datagrid 中文排序的问题

    默认情况下,EasyUI Datagrid 支持基本的数据排序功能,但其默认排序逻辑是基于字符编码的,因此无法直接实现中文按拼音顺序的排序。 #### 三、前端解决方案 对于前端来说,可以通过自定义排序函数的方式来实现中文...

    easyui datagrid 表格 打印

    标题“easyui datagrid表格打印”关注的就是如何解决这个问题,即如何将经过formatter处理后的数据在打印时保持原有的格式。 在描述中提到的“支持formatter格式化数据的打印”,指的是Datagrid中用于数据美化和...

    使用jquery的datagrid经常遇到的问题

    ### 使用jquery的datagrid常见问题及解决方案 #### 一、引言 在开发Web应用程序时,`jQuery Datagrid` 是一个非常流行的插件,用于展示表格数据。然而,在使用过程中经常会遇到一些常见问题,这些问题如果不妥善...

    WPF DataGrid合并单元格(模板列嵌套DataGrid)

    这里可以包含TextBlock、Image、其他控件,甚至嵌套的DataGrid。 3. **设置样式**:通过设置单元格的样式,我们可以控制单元格的边界,使其看起来像是合并的。例如,我们可以设置边框的可见性和宽度,以及背景色等...

    MFC DataGrid控件用法详解

    MFC DataGrid 控件用法详解 MFC 中的 DataGrid 控件是一个非常实用的控件,用于显示数据,它提供了很多实用的功能,例如显示查询结果、控制显示、格式化数据等。在这里,我们将详细介绍 MFC DataGrid 控件的用法,...

    easyUI拓展:获取当前datagrid正在编辑状态的行编号

    easyUI拓展:获取当前datagrid中在编辑状态的行编号列表,直接使用即可

    WPF DataGrid 拖拽实现

    首先,从`DragEventArgs`中获取数据,然后根据业务逻辑将其插入或移动到DataGrid的适当位置。 ```csharp private void dataGrid_Drop(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(typeof...

    打印DataGrid数据实例

    在`GeneratePages`方法中,你需要处理如何分割DataGrid到多个页面,因为一个`FixedPage`可能无法容纳所有数据。这个方法可以根据实际需求调整,例如,你可以决定每页显示多少行,或者根据`DataGrid`的高度和宽度动态...

    C#WPF之DataGrid用法

    ### C# WPF中DataGrid的使用详解 #### 一、引言 DataGrid是WPF框架中的一个重要控件,用于展示数据集。它提供了强大的数据绑定能力,并且支持多种数据操作,如增删改查及分页等功能。本文旨在通过实例详细讲解...

    DataGrid自定义列标题

    在.NET框架中,WPF(Windows Presentation Foundation)提供了一个强大的数据呈现控件——DataGrid,它用于显示和编辑网格形式的数据。在实际开发中,我们经常需要根据需求对DataGrid的列标题进行自定义,以增强界面...

    EasyUI DataGrid过滤用法实例

    EasyUI 是一个基于 jQuery 的 UI 框架,它提供了丰富的组件,包括表格(DataGrid)等,使得 Web 应用程序的界面开发更加便捷。在这个"EasyUI DataGrid 过滤用法实例"中,我们将深入探讨如何利用 EasyUI 的 DataGrid ...

    easyui datagrid 行编辑中combogrid和combobox显示问题

    修改上一个资源版本中结束编辑时combobox显示问题. 1、类型为combogrid时每行的参数不同查询返回对应的数据结果。 2、类型为combobox时,输入框显示图标按钮,实现... 3、解决类型为combobox显示为value而不是text问题

Global site tag (gtag.js) - Google Analytics