[]
In Spread ASP.NET, the calculation culture for the FpSpread instance can be set by using CalculationCulture property. It displays the calculation results in the specified culture, which can differ from the main culture value, set by using Thread.CurrentCulture.
The following example shows how to set the thread culture and calculation culture to different values.
protected void Page_Load(object sender, EventArgs e)
{
Thread.CurrentThread.CurrentCulture = new CultureInfo("nl-NL");// Dutch
FpSpread1.CalculationCulture = new CultureInfo("de-DE");// German
if (!IsPostBack)
{
DateTime dateValue = DateTime.Now.Date;
FpSpread1.Sheets[0].Columns[0].Width = 200;
FpSpread1.Sheets[0].Columns[1].Width = 250;
FpSpread1.Sheets[0].ColumnHeader.Cells[0, 0].Text = "Dates";
FpSpread1.Sheets[0].ColumnHeader.Cells[0, 1].Text = "Days Of Week in German";
// This formula evaluates in Dutch but displays Day for a specific date in German culture
//because CalculationCulture is set to German
FpSpread1.Cells[0, 1].Formula = "TEXT(DATEVALUE(\"" + dateValue + " \"),\"dddd\")";
FpSpread1.Cells[1, 1].Formula = "TEXT(DATEVALUE(\"" + dateValue.AddDays(1) + " \"),\"dddd\")";
FpSpread1.Cells[2, 1].Formula = "TEXT(DATEVALUE(\"" + dateValue.AddDays(2) + " \"),\"dddd\")";
FpSpread1.Cells[3, 1].Formula = "TEXT(DATEVALUE(\"" + dateValue.AddDays(3) + " \"),\"dddd\")";
FpSpread1.Cells[4, 1].Formula = "TEXT(DATEVALUE(\"" + dateValue.AddDays(4) + " \"),\"dddd\")";
FpSpread1.Cells[5, 1].Formula = "TEXT(DATEVALUE(\"" + dateValue.AddDays(5) + " \"),\"dddd\")";
FpSpread1.Cells[6, 1].Formula = "TEXT(DATEVALUE(\"" + dateValue.AddDays(6) + " \"),\"dddd\")";
FpSpread1.Cells[0, 0].Value = dateValue.ToShortDateString();
FpSpread1.Cells[1, 0].Value = dateValue.AddDays(1).ToShortDateString();
FpSpread1.Cells[2, 0].Value = dateValue.AddDays(2).ToShortDateString();
FpSpread1.Cells[3, 0].Value = dateValue.AddDays(3).ToShortDateString();
FpSpread1.Cells[4, 0].Value = dateValue.AddDays(4).ToShortDateString();
FpSpread1.Cells[5, 0].Value = dateValue.AddDays(5).ToShortDateString();
FpSpread1.Cells[6, 0].Value = dateValue.AddDays(6).ToShortDateString();
}
}
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
Thread.CurrentThread.CurrentCulture = New CultureInfo("nl-NL")
FpSpread1.CalculationCulture = New CultureInfo("de-DE")
If Not IsPostBack Then
Dim dateValue As DateTime = DateTime.Now.Date
FpSpread1.Sheets(0).Columns(0).Width = 200
FpSpread1.Sheets(0).Columns(1).Width = 250
FpSpread1.Sheets(0).ColumnHeader.Cells(0, 0).Text = "Dates"
FpSpread1.Sheets(0).ColumnHeader.Cells(0, 1).Text = "Days Of Week in German"
FpSpread1.Cells(0, 1).Formula = "TEXT(DATEVALUE(""" & dateValue & " ""),""dddd"")"
FpSpread1.Cells(1, 1).Formula = "TEXT(DATEVALUE(""" & dateValue.AddDays(1) & " ""),""dddd"")"
FpSpread1.Cells(2, 1).Formula = "TEXT(DATEVALUE(""" & dateValue.AddDays(2) & " ""),""dddd"")"
FpSpread1.Cells(3, 1).Formula = "TEXT(DATEVALUE(""" & dateValue.AddDays(3) & " ""),""dddd"")"
FpSpread1.Cells(4, 1).Formula = "TEXT(DATEVALUE(""" & dateValue.AddDays(4) & " ""),""dddd"")"
FpSpread1.Cells(5, 1).Formula = "TEXT(DATEVALUE(""" & dateValue.AddDays(5) & " ""),""dddd"")"
FpSpread1.Cells(6, 1).Formula = "TEXT(DATEVALUE(""" & dateValue.AddDays(6) & " ""),""dddd"")"
FpSpread1.Cells(0, 0).Value = dateValue.ToShortDateString()
FpSpread1.Cells(1, 0).Value = dateValue.AddDays(1).ToShortDateString()
FpSpread1.Cells(2, 0).Value = dateValue.AddDays(2).ToShortDateString()
FpSpread1.Cells(3, 0).Value = dateValue.AddDays(3).ToShortDateString()
FpSpread1.Cells(4, 0).Value = dateValue.AddDays(4).ToShortDateString()
FpSpread1.Cells(5, 0).Value = dateValue.AddDays(5).ToShortDateString()
FpSpread1.Cells(6, 0).Value = dateValue.AddDays(6).ToShortDateString()
End If
End Sub