/// <summary>Equals</summary> /// <param name="ct">CheckType</param> /// <returns> /// true:等しい /// false:等しくない /// </returns> /// <remarks>全メンバの==のAND</remarks> public bool Equals(CheckType ct) { // null対応 if (ct == null) { return false; } return (this.IsIndispensabile == ct.IsIndispensabile) && (this.IsHankaku == ct.IsHankaku) && (this.IsZenkaku == ct.IsZenkaku) && (this.IsNumeric == ct.IsNumeric) && (this.IsKatakana == ct.IsKatakana) && (this.IsHanKatakana == ct.IsHanKatakana) && (this.IsHiragana == ct.IsHiragana) && (this.IsDate == ct.IsDate); }
/// <summary> /// ConvertFrom(プロパティグリッドからの変換)を実行する。 /// </summary> /// <param name="context">コンテキスト</param> /// <param name="culture">カルチャ</param> /// <param name="value">文字列</param> /// <returns>CheckTypeオブジェクト</returns> public override object ConvertFrom( ITypeDescriptorContext context, CultureInfo culture, object value) { // 文字列型の場合 if (value is string) { string[] arys = value.ToString().Split(','); CheckType ct = new CheckType(); foreach(string s in arys) { string t = s.Trim(); if (t == "IsIndispensabile") { ct.IsIndispensabile = true; } if (t == "IsZenkaku") { ct.IsZenkaku = true; } if (t == "IsHankaku") { ct.IsHankaku = true; } if (t == "IsNumeric") { ct.IsNumeric = true; } if (t == "IsKatakana") { ct.IsKatakana = true; } if (t == "IsHanKatakana") { ct.IsHanKatakana = true; } if (t == "IsHiragana") { ct.IsHiragana = true; } if (t == "IsDate") { ct.IsDate = true; } } return ct; } // 上記以外の場合、ベースへ。 return base.ConvertFrom(context, culture, value); }