したがって、実行時に生成された動的クエリのプレビューデータを保持する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を使用して、すべての動的列と関連する方法でコードを共有できますが、データ型に基づいて正しくフォーマットできますか?