ですから、これについて他の質問を見てきましたが、私の生涯、グリッド形式を通貨としてのフロートにすることはできません。これが私の単純なプロジェクトです。4列のgridcontrol1というグリッドコントロールがあります。最後の1つを通貨、他の3つを文字列にします。
public partial class Form1 : Form
{
private DevExpress.XtraGrid.GridControl gridControl1;
private DevExpress.XtraGrid.Views.Grid.GridView gridView1;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn1;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn2;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn3;
private DevExpress.XtraGrid.Columns.GridColumn gridColumn4;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
ArrayList test = new ArrayList();
test.Add(new MyObject() { myCurrency = 1.5F, prop1 = "hi", prop2 = "hi2", prop3 = "hi3" });
gridColumn4.DisplayFormat.FormatString = "c";
gridColumn4.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Custom;
gridControl1.DataSource = test;
gridControl1.MainView.PopulateColumns();
gridControl1.RefreshDataSource();
}
}
public class MyObject
{
public string prop1 { get; set; }
public string prop2 { get; set; }
public string prop3 { get; set; }
public float myCurrency { get; set; }
}
「c」、「c2」、「N」、「N2」のフォーマット文字列とカスタムと数値の両方のFormatType、およびそれらの任意の組み合わせを試しましたが、ボックスに「1.5」が表示されたのと同じ結果になりました。私は何か単純な間違ったことをしていますか?これはそれほど難しいことではありません!