繁体   English   中英

XamDataGrid动态字段格式很差

[英]XamDataGrid dynamic fields format poorly

所以我有一个简单的窗口,其中只包含一个XamDataGrid,它保存在运行时生成的动态查询的预览数据...

public partial class DataPreview : Window
{
    public DataTable Data { get; set; }
    public DataPreview(string SQL)
    {
        InitializeComponent();

        this.DataContext = this;
        Data = DatabaseManager.ExecuteQuery(SQL);
    }
}

我有数据绑定到XamDataGrid的数据源...

<igDP:XamDataGrid DataSource="{Binding Data}" ScrollingMode="Immediate">
     <igDP:XamDataGrid.FieldSettings>
          <igDP:FieldSettings
             AllowEdit="False"/>
     </igDP:XamDataGrid.FieldSettings>
</igDP:XamDataGrid>

现在一切正常,问题是XamDataGrid中编辑器的数据类型有时与字段的数据类型不匹配。 例如,所有数字都显示有美元符号。 我试着添加这一行......

EditAsType="{x:Type sys:String}"

除了实际货币金额之外,其中包含了所有内容,现在显示为xx.xxxx且没有美元符号。 我在网上找到的所有解决方案似乎都是直接在xaml中编辑字段,但由于这些字段都是动态的,所以这不是一个选项。 我可以做些什么来在xaml中正确设置编辑器吗? 或者我可以在代码中执行一些例程来按摩数据以正确显示XamDataGrid? 任何人都可以使用XamDataGrid以相关的方式与所有动态列共享任何代码,但是能够根据数据类型正确格式化它们吗?

可以使用ValueEditor.RegisterDefaultEditorForType设置用于特定类型字段的编辑器。 如果编辑器是正确的类型,并且您希望更改给定类型的掩码,则可以使用XamMaskedEditor.RegisterDefaultMaskForType

如果要为同一类型的不同字段设置掩码或编辑器的方式不同,则需要在创建FieldLayout后在代码中执行此操作。 为此,您可以使用FieldLayoutInitialized事件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM