MESCIUS SPREAD for Windows Forms 17.0J 移行ガイド
マスク型セルにリテラル文字を含む値を設定できない


ステータス

バージョン ID 機能分類 対応策
8.0.3503.2008 80031 マスク型セル ×

詳細

旧バージョンでは、マスク型セルに、例えば日付を表す「2017/04/07」などリテラル文字「/」を含む値を設定できましたが、本バージョン以降では設定できません。

本バージョン以降では、リテラル文字を含まない値(例、「20170407」)を設定してください。

private void Form1_Load(object sender, EventArgs e)
{
    DataTable dt = new DataTable();
    dt.Columns.Add("A");
    DataRow row = dt.NewRow();
    row["A"] = "2017/04/07 12:00:00";// リテラル文字を含む値はセルに設定されません
    // 以下のようにリテラル文字を含まない値を設定してください
    //row("A") = "20170407120000"
    dt.Rows.Add(row);
    fpSpread1.Sheets[0].DataAutoCellTypes = false;
    fpSpread1.Sheets[0].DataSource = dt;
    FarPoint.Win.Spread.CellType.MaskCellType mcDatetime = new FarPoint.Win.Spread.CellType.MaskCellType();
    mcDatetime.Mask = "####/##/## ##:##:##";
    fpSpread1.Sheets[0].Columns[0].CellType = mcDatetime;
    fpSpread1.Sheets[0].Columns[0].DataField = "A";
}
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    Dim dt As New DataTable
    dt.Columns.Add("A")
    Dim row As DataRow = dt.NewRow
    row("A") = "2017/04/07 12:00:00" ' リテラル文字を含む値はセルに設定されません
    ' 以下のようにリテラル文字を含まない値を設定してください
    'row("A") = "20170407120000"
    dt.Rows.Add(row)
    FpSpread1.Sheets(0).DataAutoCellTypes = False
    FpSpread1.Sheets(0).DataSource = dt
    Dim mcDatetime As New FarPoint.Win.Spread.CellType.MaskCellType
    mcDatetime.Mask = "####/##/## ##:##:##"
    FpSpread1.Sheets(0).Columns(0).CellType = mcDatetime
    FpSpread1.Sheets(0).Columns(0).DataField = "A"
End Sub
参照

 

 


© MESCIUS inc. All rights reserved.