UmAlQuraCalendar.AlgorithmType プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のカレンダーの暦法 (太陽暦、太陰暦、または両者の組み合わせ) を示す値を取得します。
public:
virtual property System::Globalization::CalendarAlgorithmType AlgorithmType { System::Globalization::CalendarAlgorithmType get(); };
public override System.Globalization.CalendarAlgorithmType AlgorithmType { get; }
member this.AlgorithmType : System.Globalization.CalendarAlgorithmType
Public Overrides ReadOnly Property AlgorithmType As CalendarAlgorithmType
プロパティ値
常に LunarCalendar を返します。
例
次の例では、リフレクションを使用して、.NET Frameworkにある各Calendar型をインスタンス化し、そのAlgorithmTypeプロパティの値を表示します。
using System;
using System.Collections;
using System.Globalization;
using System.Reflection;
public class Example
{
public static void Main()
{
Assembly assem = Assembly.GetAssembly(typeof(Calendar));
Type[] types = assem.GetExportedTypes();
Type[] calendars = Array.FindAll(types, IsValidCalendar);
Array.Sort(calendars, new CalendarComparer());
Console.WriteLine("{0,-30} {1}\n", "Calendar", "Algorithm Type");
foreach (var cal in calendars) {
// Instantiate a calendar object.
ConstructorInfo ctor = cal.GetConstructor( new Type[] {} );
Calendar calObj = (Calendar) ctor.Invoke( new Type[] {} );
Console.WriteLine("{0,-30} {1}",
cal.ToString().Replace("System.Globalization.", ""),
cal.InvokeMember("AlgorithmType",
BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty,
null, calObj, null));
}
}
private static bool IsValidCalendar(Type t)
{
if (t.IsSubclassOf(typeof(Calendar)))
if (t.IsAbstract)
return false;
else
return true;
else
return false;
}
}
public class CalendarComparer : IComparer
{
public int Compare(object x, object y)
{
Type tX = (Type) x;
Type tY = (Type) y;
return tX.Name.CompareTo(tY.Name);
}
}
// The example displays the following output:
// Calendar Algorithm Type
//
// ChineseLunisolarCalendar LunisolarCalendar
// GregorianCalendar SolarCalendar
// HebrewCalendar LunisolarCalendar
// HijriCalendar LunarCalendar
// JapaneseCalendar SolarCalendar
// JapaneseLunisolarCalendar LunisolarCalendar
// JulianCalendar SolarCalendar
// KoreanCalendar SolarCalendar
// KoreanLunisolarCalendar LunisolarCalendar
// PersianCalendar SolarCalendar
// TaiwanCalendar SolarCalendar
// TaiwanLunisolarCalendar LunisolarCalendar
// ThaiBuddhistCalendar SolarCalendar
// UmAlQuraCalendar LunarCalendar
Imports System.Collections
Imports System.Globalization
Imports System.Reflection
Module Example
Public Sub Main()
Dim assem As Assembly = Assembly.GetAssembly(GetType(Calendar))
Dim types() As Type = assem.GetExportedTypes()
Dim calendars() As Type = Array.FindAll(types, AddressOf IsValidCalendar)
Array.Sort(calendars, New CalendarComparer())
Console.WriteLine("{0,-30} {1}", "Calendar", "Algorithm Type")
Console.WriteLine()
For Each cal In calendars
' Instantiate a calendar object.
Dim ctor As ConstructorInfo = cal.GetConstructor( {} )
Dim calObj As Calendar = CType(ctor.Invoke( {} ), Calendar)
Console.WriteLine("{0,-30} {1}",
cal.ToString().Replace("System.Globalization.", ""),
cal.InvokeMember("AlgorithmType",
BindingFlags.Public Or BindingFlags.Instance Or BindingFlags.GetProperty,
Nothing, calObj, Nothing))
Next
End Sub
Private Function IsValidCalendar(ByVal t As Type) As Boolean
If t.IsSubClassOf(GetType(Calendar)) Then
If t.IsAbstract Then
Return False
Else
Return True
End If
Else
Return False
End If
End Function
End Module
Public Class CalendarComparer : Implements IComparer
Public Function Compare(ByVal x As Object, ByVal y As Object) As Integer _
Implements IComparer.Compare
Dim tX As Type = DirectCast(x, Type)
Dim tY As Type = DirectCast(y, Type)
Return tX.Name.CompareTo(tY.Name)
End Function
End Class
' The example displays the following output:
' Calendar Algorithm Type
'
' ChineseLunisolarCalendar LunisolarCalendar
' GregorianCalendar SolarCalendar
' HebrewCalendar LunisolarCalendar
' HijriCalendar LunarCalendar
' JapaneseCalendar SolarCalendar
' JapaneseLunisolarCalendar LunisolarCalendar
' JulianCalendar SolarCalendar
' KoreanCalendar SolarCalendar
' KoreanLunisolarCalendar LunisolarCalendar
' PersianCalendar SolarCalendar
' TaiwanCalendar SolarCalendar
' TaiwanLunisolarCalendar LunisolarCalendar
' ThaiBuddhistCalendar SolarCalendar
' UmAlQuraCalendar LunarCalendar
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET