C#名稱空間System.ComponentModel屬性方法彙總
1,System.ComponentModel
System.ComponentModel 名稱空間提供用於實現元件和控制元件的執行時和設計時行為的類。 此名稱空間包括用於特性和型別轉換器的實現、資料來源繫結和元件授權的基類和介面。
C# 語法優美,特性註釋是其中一項,其使用特點如下圖。
筆者在學習 ASP.NET Core 時,有很多大神的程式碼很多地方使用的特性,特性種類很多,o((⊙﹏⊙))o. 有時會很懵逼。所以筆者根據微軟的資料整理一下(大部分Copy官方文件)。
此名稱空間中的類將劃分為以下類別:
- 核心元件類。 Component, IComponent, Container,和IContainer類。
- 元件授權。 License, LicenseManager, LicenseProvider,和LicenseProviderAttribute類。
- 特性。Attribute 類。
- 說明符和永續性。 TypeDescriptor, EventDescriptor,和PropertyDescriptor類。
- 型別轉換器。 TypeConverter 類。
之前筆者把一些東西混餚了,型別 [Required] [MaxLength] 這些特性,本質是類,有其建構函式、方法。
ComponentModel 名稱空間提供了 System.ComponentModel.DataAnnotations,此名稱空間包含資料操作的特性。
後面會詳細解釋。
2,特性名稱空間與常用類
[Required] [MaxLength] 等特性,儲存在名稱空間System.ComponentModel.DataAnnotations 中,筆者列出其他名稱空間:
名稱空間 | 描述 |
---|---|
System.ComponentModel.Design | 名稱空間包含的類可供開發人員用來為元件生成自定義的設計時行為,以及在設計時配置元件所需的使用者介面。 設計時環境提供了使開發人員能夠安排元件並配置它們的屬性的系統。 某些元件可能需要特定的設計時僅有的行為,才能在設計時環境中正常執行。 同時,提供自定義使用者介面來幫助開發人員配置元件或複雜資料型別的值,這可能也非常也用。 在此名稱空間中定義的類和介面可用於生成元件的設計時行為、訪問設計時服務,以及實現自定義的設計時配置介面。 |
System.ComponentModel.Composition | 此名稱空間提供構成託管擴充套件框架 (MEF) 的類的核心的類 |
System.ComponentModel.DataAnnotations | 名稱空間提供定義 ASP.NET MVC 和 ASP.NET 資料控制元件的類的特性 |
System.ComponentModel.Design.Data | 名稱空間包含的類可用於為資料相關的元件生成自定義設計時行為 |
System.ComponentModel.Design.Serialization | 名稱空間提供在設計時對序列化進行自定義和控制的型別 |
System.ComponentModel.Composition.Hosting | 名稱空間提供 Managed Extensibility Framework (MEF) 型別,這些型別對可擴充套件應用程式的開發人員或宿主都很有用 |
System.ComponentModel.DataAnnotations.Schema | 名稱空間為用於定義 ASP.NET MVC 和 ASP.NET 資料控制元件的元資料的類的特性提供支援 |
System.ComponentModel.Composition.Primitives | 此名稱空間提供作為 MEF 模型基礎的基元型別 |
System.ComponentModel.Composition.Registration | 名稱空間包含啟用可管理的擴充套件性框架 (MEF)部件的基於規則的配置的型別 |
System.ComponentModel.Composition.ReflectionModel | 名稱空間為使用基於反射的程式設計模型的設計者提供 Managed Extensibility Framework (MEF) 型別 |
以上內容不能在 System.ComponentModel 名稱空間找到,他們都是獨立的名稱空間。
下面筆者把 System.ComponentModel.DataAnnotations 的特性都列舉出來。
3,System.ComponentModel.DataAnnotations
官方的描述是名稱空間提供定義 ASP.NET MVC 和 ASP.NET 資料控制元件的類的特性。
這個是我們在開發時經常遇到的。在實際使用中,我們可以在控制檯、Winform 等專案的 Model 中加此特性,控制屬性輸入。然而並不是說在控制檯也是也能生效,只是能夠用到。後面會解釋到。
此名稱空間的特性包含 [Required]、[Response]、[Phone] 等 ASP.NET Core 資料驗證常用的特性。
AssociatedMetadataTypeTypeDescriptionProvider | 通過新增在關聯類中定義的特性和屬性資訊,從而擴充套件某個類的元資料資訊。 |
AssociationAttribute | 指定實體成員表示資料關係(如外來鍵關係)。 |
BindableTypeAttribute | 指定型別是否通常用於繫結。 |
CompareAttribute | 提供用於比較兩個屬性的特性。 |
ConcurrencyCheckAttribute | 指定屬性參與樂觀併發檢查。 |
CreditCardAttribute | 指定資料欄位值是信用卡號。 |
CustomValidationAttribute | 指定用於驗證屬性或類例項的自定義驗證方法。 |
DataTypeAttribute | 指定要與資料欄位關聯的其他型別的名稱。 |
DisplayAttribute | 提供允許為實體分部類的型別和成員指定可本地化字串的通用特性。 |
DisplayColumnAttribute | 指定作為外來鍵列顯示在被引用表中的列。 |
DisplayFormatAttribute | 指定 ASP.NET 動態資料如何顯示資料欄位以及如何設定資料欄位的格式。 |
EditableAttribute | 指示資料欄位是否可編輯。 |
EmailAddressAttribute | 驗證電子郵件地址。 |
EnumDataTypeAttribute | 啟用 .NET Framework 列舉,以對映到資料列。 |
FileExtensionsAttribute | 驗證副檔名。 |
FilterUIHintAttribute | 表示用於指定列的篩選行為的特性。 |
KeyAttribute | 表示唯一標識實體的一個或多個屬性。 |
MaxLengthAttribute | 指定屬性中允許的陣列或字串資料的最大長度。 |
MetadataTypeAttribute | 指定要與資料模型類關聯的元資料類。 |
MinLengthAttribute | 指定屬性中允許的陣列或字串資料的最小長度。 |
PhoneAttribute | 指定資料欄位值是格式標準的電話號碼。 |
RangeAttribute | 為資料欄位的值指定數值範圍約束。 |
RegularExpressionAttribute | 指定 ASP.NET 動態資料中的資料欄位值必須與指定的正則表示式匹配。 |
RequiredAttribute | 指定資料欄位值是必需的。 |
ScaffoldColumnAttribute | 指定類或資料列是否使用基架。 |
ScaffoldTableAttribute | 指定類或資料表是否使用基架。 |
StringLengthAttribute | 指定資料欄位中允許的字元的最小長度和最大長度。 |
TimestampAttribute | 列的資料型別指定為行版本。 |
UIHintAttribute | 指定動態資料用來顯示資料欄位的模板或使用者控制元件。 |
UrlAttribute | 提供 URL 驗證。 |
ValidationAttribute | 充當所有驗證特性的基類。 |
ValidationContext | 描述執行驗證檢查的上下文。 |
ValidationException | 表示在使用ValidationAttribute類的情況下驗證資料欄位時發生的異常。 |
ValidationResult | 表示驗證請求的結果的容器。 |
Validator | 定義一個幫助器類,在與物件、屬性和方法關聯的ValidationAttribute特性中包含此類時,可使用此類來驗證這些項。 |
使用示例(使用時忽略後面的 Attribute)
using System.ComponentModel.DataAnnotations; namespace XFAISDK.Model.Response { public class ResponseModel { [Required] public int Code { get; set; } public string Result { get; set; } public dynamic Data { get; set; } } }
由於 System.ComponentModel.DataAnnotations 名稱空間的特性較多,筆者只以 Required 示範。
Required
[Required]指定資料欄位值是必需的,使用者輸入時不能為空。
他有多種使用形式,
屬性
使用方法如下
[Required(ErrorMessage = "Title is required.")] public object Title;
其他屬性還有:
AllowEmptyStrings | 獲取或設定一個值,該值指示是否允許空字串。 |
ErrorMessage | 獲取或設定一條在驗證失敗的情況下與驗證控制元件關聯的錯誤訊息。 (Inherited fromValidationAttribute) |
ErrorMessageResourceName | 獲取或設定錯誤訊息資源的名稱,在驗證失敗的情況下,要使用該名稱來查詢ErrorMessageResourceType屬性值。 (Inherited fromValidationAttribute) |
ErrorMessageResourceType | 獲取或設定在驗證失敗的情況下用於查詢錯誤訊息的資源型別。 (Inherited fromValidationAttribute) |
ErrorMessageString | 獲取本地化的驗證錯誤訊息。 (Inherited fromValidationAttribute) |
RequiresValidationContext | 獲取指示特性是否要求驗證上下文的值。 (Inherited fromValidationAttribute) |
TypeId | 在派生類中實現時,獲取此Attribute的唯一識別符號。 (Inherited fromAttribute) |
方法
Equals(Object) | 返回一個值,該值指示此例項是否與指定的物件相等。 (Inherited fromAttribute) |
FormatErrorMessage(String) | 基於發生錯誤的資料欄位對錯誤訊息應用格式設定。 (Inherited fromValidationAttribute) |
GetHashCode() | 返回此例項的雜湊程式碼。 (Inherited fromAttribute) |
GetType() | 獲取當前例項的Type。 (Inherited fromObject) |
GetValidationResult(Object,ValidationContext) | 檢查指定的值對於當前的驗證特性是否有效。 (Inherited fromValidationAttribute) |
IsDefaultAttribute() | 在派生類中重寫時,指示此例項的值是否是派生類的預設值。 (Inherited fromAttribute) |
IsValid(Object) | 檢查必填資料欄位的值是否不為空。 |
IsValid(Object,ValidationContext) | 根據當前的驗證特性來驗證指定的值。 (Inherited fromwww.cppcns.comValidationAttribute) |
Match(Object) | 當在派生類中重寫時,返回一個指示此例項是否等於指定物件的值。 (Inherited fromAttribute) |
MemberwiseClone() | 建立當前Object的淺表副本。 (Inherited fromObject) |
ToString() | 返回表示當前物件的字串。 (Inherited fromObject) |
Validate(Object,String) | 驗證指定的物件。 (Inherited fromValidationAttribute) |
Validate(Object,ValidationContext) | 驗證指定的物件。 (Inherited fromValidationAttribute) |
其方法大多數是繼承基類的,使用方法如下
public class ResponseModel { RequiredAttribute RequiredTest = new RequiredAttribute(); puwww.cppcns.comblic string TestA(object a) { if (RequiredTest.Match(a)) { return "true"; } return "false"; } [Required()] public int Code { get; set; } public string Result { get; set; } public dynamic Data { get; set; } } }
筆者暫時不清楚特性的方法應用場景,只瞭解到 特性的屬性 的使用。
其他名稱空間可以到官方文件檢視。
4,Classes 類
AddingNewEventArgs | 為AddingNew事件提供資料。 |
AmbientValueAttribute | 指定要傳遞給屬性的值,以使該屬性從另一個源中獲取其值。這稱為“環境”。此類不能被繼承。 |
ArrayConverter | 提供將Array物件與其他各種表示形式相互轉換的型別轉換器。 |
AsyncCompletedEventArgs | 為 MethodNameCompleted事件提供資料。 |
AsyncOperation | 跟蹤非同步操作的生存期。 |
AsyncOperationManager | 提供支援非同步方法呼叫的類的併發管理。此類不能被繼承。 |
AttributeCollection | 表示特性的集合。 |
AttributeProviderAttribute | 啟用特性重定向。此類不能被繼承。 |
BackgroundWorker | 在單獨的執行緒上執行操作。 |
BaseNumberConverter | 提供非浮點數字型別的基型別轉換器。 |
BindableAttribute | 指定成員是否通常用於繫結。此類不能被繼承。 |
BindingList<T> | 提供支援資料繫結的泛型集合。 |
BooleanConverter | 提供將Boolean物件與其他各種表示形式相互轉換的型別轉換器。 |
BrowsableAttribute | 指定某一屬性或事件是否應在“屬性”視窗中顯示。 |
ByteConverter | 提供用於在 8 位無符號整數物件與其他各種表示形式之間實現相互轉換的型別轉換器。 |
CancelEventArgs | 為可取消的事件提供資料。 |
CategoryAttribute | 指定當屬性或事件顯示在一個設定為“按分類順序”模式的PropertyGrid控制元件中時,用於對屬性或事件分組的類別的名稱。 |
CharConverter | 提供用於在 Unicode 字元物件與其他各種表示形式之間實現相互轉換的型別轉換器。 |
CollectionChangeEventArgs | 為CollectionChanged事件提供資料。 |
CollectionConverter | 提供用於在集合物件與其他各種表示形式之間實現相互轉換的型別轉換器。 |
ComplexBindingPropertiesAttribute | 指定一個元件的資料來源和資料成員屬性,該元件支援複雜資料繫結。此類不能被繼承。 |
Component | 提供IComponent介面的基實現並啟用應用程式之間的物件共享。 |
ComponentCollection | 為IComponent物件的集合提供只讀容器。 |
ComponentConverter | 提供將元件與各種其他表示形式相互轉換的型別轉換器。 |
ComponentEditor | 提供自定義元件編輯器的基類。 |
ComponentResourceManager | 提供元件或物件的列舉資源的簡單功能。ComponentResourceManager類是一個ResourceManager。 |
Container | 封裝零個或更多個元件。 |
ContainerFilterService | 為容器篩選服務提供基類。 |
CultureInfoConverter | 提供將CultureInfo物件與其他各種表示形式相互轉換的型別轉換器。 |
CurrentChangedEventManager | 提供WeakEventManager實現,以便可以使用“弱事件偵聽器”模式附加CurrentChanged事件的偵聽器。 |
CurrentChangingEventArgs | 提供CurrentChanging事件的有關資訊。 |
CurrentChangingEventManager | 提供WeakEventManager實現,以便可以使用“弱事件偵聽器”模式附加CurrentChanging事件的偵聽器。 |
CustomTypeDescriptor | 提供ICustomTypeDescriptor介面的簡單預設實現。 |
DataErrorsChangedEventArgs | 為ErrorsChanged事件提供資料。 |
DataObjectAttribute | 將某一型別標識為適合繫結到ObjectDataSource物件的物件。此類不能被繼承。 |
DataObjectFieldAttribute | 為表示資料欄位的屬性提供元資料。此類不能被繼承。 |
DataObjectMethodAttribute | 標識由某一型別公開的資料操作方法,該方法所執行的操作型別以及該方法是否是預設的資料方法。此類不能被繼承。 |
DateTimeConverter | 提供將DateTime物件與其他各種表示形式相互轉換的型別轉換器。 |
DateTimeOffsetConverter | 提供將DateTimeOffset結構與其他各種表示形式相互轉換的型別轉換器。 |
DecimalConverter | 提供將Decimal物件與其他各種表示形式相互轉換的型別轉換器。 |
DefaultBindingPropertyAttribute | 指定元件的預設繫結屬性。此類不能被繼承。 |
DefaultEventAttribute | 指定元件的預設事件。 |
DefaultPropertyAttribute | 指定元件的預設屬性。 |
DefaultValueAttribute | 指定屬性的預設值。 |
DependencyPropertyDescriptor | 提供用於說明依賴屬性的其他屬性特徵的PropertyDescriptor的擴充套件。 |
DescriptionAttribute | 指定屬性或事件的說明。 |
DesignerAttribute | 指定用於為元件實現設計時服務的類。 |
DesignerCategoryAttribute | 指定類設計器屬於某一類別。 |
DesignerProperties | 提供用於與設計器進行通訊的附加屬性。 |
DesignerSerializationVisibilityAttribute | 指定在設計時序列化元件上的屬性時所使用的永續性型別。 |
DesignOnlyAttribute | 指定某個屬性是否只能在設計時設定。 |
DesignTimeVisibleAttribute | DesignTimeVisibleAttribute標記元件的可見性。如果存在Yes,視覺化設計器即可在設計器上顯示該元件。 |
DisplayNameAttribute | 指定屬性、事件或不採用任何引數的公共 void 方法的顯示名稱。 |
DoubleConverter | 提供將雙精度浮點數字物件與各種其他表示形式相互轉換的型別轉換器。 |
DoWorkEventArgs | 為DoWork事件處理程式提供資料。 |
EditorAttribute | 指定用於更改屬性的編輯器。此類不能被繼承。 |
EditorBrowsableAttribute | 指定可在編輯器中檢視的屬性或方法。此類不能被繼承。 |
EnumConverter | 提供將Enum物件與其他各種表示形式相互轉換的型別轉換器。 |
ErrorsChangedEventManager | 提供WeakEventManager實現,以便可以使用弱事件偵聽器模式附加ErrorsChanged事件的偵聽器。 |
EventDescriptor | 提供有關事件的資訊。 |
EventDescriptorCollection | 表示EventDescriptor物件集合。 |
EventHandlerList | 提供一個簡單的委託列表。此類不能被繼承。 |
ExpandableObjectConverter | 提供在可擴充套件物件與其他各種表示形式之間實現轉換的型別轉換器。 |
ExtenderProvidedPropertyAttribute | 指定由擴充套件程式提供程式提供的屬性。此類不能被繼承。 |
GroupDescription | 為描述如何將集合中的項劃分為組的型別提供抽象基類。 |
GuidConverter | 提供將Guid物件與其他各種表示形式相互轉換的型別轉換器。 |
HandledEventArgs | 為可在事件處理程式中完整處理的事件提供資料。 |
ImmutableObjectAttribute | 指定物件沒有可以被編輯的子屬性。此類不能被繼承。 |
InheritanceAttribute | 指示是否已從基類繼承與此特性關聯的元件。此類不能被繼承。 |
InitializationEventAttribute | 指定在初始化時引發的事件。此類不能被繼承。 |
InstallerTypeAttribute | 為安裝元件的型別指定安裝程式。 |
InstanceCreationEditor | 從PropertyGrid中的下拉框中建立特定型別屬性的例項。 |
Int16Converter | 提供用於在 16 位有符號整數物件與其他表示形式之間實現相互轉換的型別轉換器。 |
Int32Converter | 提供用於在 32 位有符號整數物件與其他表示形式之間實現相互轉換的型別轉換器。 |
Int64Converter | 提供用於在 64 位有符號整數物件與其他各種表示形式之間實現相互轉換的型別轉換器。 |
InvalidAsynchronousStateException | 當應執行某個操作的執行緒不再存在或者沒有訊息迴圈時,將引發此異常。 |
InvalidEnumArgumentException | 使用無效引數(為列舉數)時引發的異常。 |
ItemPropertyInfo | 包含有關屬性的資訊。 |
License | 為所有許可證提供abstract基類。對元件的特定例項授予許可證。 |
LicenseContext | 指定何時可使用授權的物件,並且提供一種方法,用以獲取為支援在其域內執行的許可證所需要的附加服務。 |
LicenseException | 表示當元件不能被授予許可證時引發的異常。 |
LicenseManager | 提供屬性和方法,用以將許可證新增到元件和管理LicenseProvider。此類不能被繼承。 |
LicenseProvider | 提供abstract基類以便實現許可證提供程式。 |
LicenseProviderAttribute | 指定要與類一起使用的LicenseProvider。此類不能被繼承。 |
LicFileLicenseProvider | 提供LicenseProvider的實現。提供程式與 Microsoft .NET Framework 標準授權模型的工作方式相似。 |
ListBindableAttribute | 指定列表可被用作資料來源。視覺化設計器應該使用該特性來確定是否在資料繫結選擇器中顯示特定的列表。此類不能被繼承。 |
ListChangedEventArgs | 為ListChanged事件提供資料。 |
ListSortDescription | 提供對應用於資料來源的排序操作的說明。 |
ListSortDescriptionCollection | 表示ListSortDescription物件集合。 |
LocalizableAttribute | 指定是否應本地化某一屬性。此類不能被繼承。 |
LookupBindingPropertiesAttribute | 指定支援基於查詢的繫結的屬性。此類不能被繼承。 |
MarshalByValueComponent | 實現IComponent並提供可遠端控制的元件的基實現,該元件是由值封送的(傳遞序列化物件的副本)。 |
MaskedTextProvider | 表示可由支援掩碼的任何數量的控制元件(如MaskedTextBox控制元件)使用的掩碼分析服務。 |
MemberDescriptor | 表示一個類成員,例如某個屬性或事件。這是一個抽象基類。 |
MergablePropertyAttribute | 指定該屬效能與“屬性”視窗中屬於其他物件的屬性組合。 |
MultilineStringConverter | 提供將多行字串轉換為單行字串的型別轉換器。 |
NestedContainer | 提供INestedContainer介面的基實現,該介面使容器可以擁有一個所屬元件。 |
NotifyParentPropertyAttribute | 指示當此特性應用到的屬性的值被修改時,通知父屬性。此類不能被繼承。 |
NullableConverter | 提供可以為 null 的型別與其基礎基元型別之間的自動轉換。 |
ParenthesizePropertyNameAttribute | 指示關聯屬性的名稱在“屬性”視窗中顯示時是否帶有括號。此類不能被繼承。 |
PasswordPropertyTextAttribute | 指示物件的文字表示形式被星號等字元隱匿。此類不能被繼承。 |
ProgressChangedEventArgs | 為ProgressChanged事件提供資料。 |
PropertyChangedEventArgs | 為PropertyChanged事件提供資料。 |
PropertyChangedEventManager | 提供WeakEventManager實現,以便可以使用“弱事件偵聽器”模式附加PropertyChanged事件的偵聽器。 |
PropertyChangingEventArgs | 為PropertyChanging事件提供資料。 |
PropertyDescriptor | 提供類的屬性的抽象。 |
PropertyDescriptorCollection | 表示PropertyDescriptor物件集合。 |
PropertyFilterAttribute | 指定哪些屬性應由型別描述符報告,尤其是GetProperties(Object)方法。 |
PropertyTabAttribute | 標識要為指定的類顯示的屬性選項卡。 |
ProvidePropertyAttribute | 指定IExtenderProvider的實施者提供給其他元件的屬性的名稱。無法繼承此類 |
ReadOnlyAttribute | 指定該特性所繫結到的屬性是隻讀屬性還是讀/寫屬性。無法繼承此類 |
RecommendedAsConfigurableAttribute | 指定該屬性可以用作應用程式設定。 |
ReferenceConverter | 提供將物件引用與其他表示形式相互轉換的型別轉換器。 |
RefreshEventArgs | 為Refreshed事件提供資料。 |
RefreshPropertiesAttribute | 指示關聯的屬性值更改時應重新整理屬性網格。此類不能被繼承。 |
RunInstallerAttribute | 指定在安裝程式集時是否應呼叫 Visual Studio 自定義操作安裝程式或Installutil.exe (安裝程式工具)。 |
RunWorkerCompletedEventArgs | 為 MethodNameCompleted事件提供資料。 |
SByteConverter | 提供用於在 8 位無符號整數物件與字串之間實現相互轉換的型別轉換器。 |
SettingsBindableAttribute | 指定何時可將元件屬性繫結到應用程式設定。 |
SingleConverter | 提供將單精度浮點數字物件與各種其他表示形式相互轉換的型別轉換器。 |
SortDescriptionCollection | 表示SortDescription物件的集合。 |
StringConverter | 提供用於在字串物件與其他表示形式之間實現相互轉換的型別轉換器。 |
SyntaxCheck | 提供方法來驗證計算機名稱和路徑是否符合特定語法。此類不能被繼承。 |
TimeSpanConverter | 提供將TimeSpan物件與其他表示形式相互轉換的型別轉換器。 |
ToolboxItemAttribute | 表示工具箱項的特性。 |
ToolboxItemFilterAttribute | 為工具箱項指定要使用的篩選器字串和篩選器型別。 |
TypeConverter | 提供一種將值的型別轉換為其他型別以及訪問標準值和子屬性的統一方法。 |
TypeConverter.SimplePropertyDescriptor | 表示一個abstract類,該類為沒有屬性的物件提供屬性。 |
TypeConverter.StandardValuesCollection | 表示值的集合。 |
TypeConverterAttribute | 指定對於此屬性繫結到的物件要使用哪種型別作為轉換器。 |
TypeDescriptionProvider | 向TypeDescriptor提供補充元資料。 |
TypeDescriptionProviderAttribute | 指定類的自定義型別說明提供程式。此類不能被繼承。 |
TypeDescriptor | 提供有關元件特徵的資訊,如元件的特性、屬性和事件。此類不能被繼承。 |
TypeListConverter | 提供可用於在列表框中填充可用型別的型別轉換器。 |
UInt16Converter | 提供用於在 16 位無符號整數物件與其他表示形式之間實現相互轉換的型別轉換器。 |
UInt32Converter | 提供用於在 32 位無符號整數物件與其他各種表示形式之間實現相互轉換的型別轉換器。 |
UInt64Converter | 提供用於在 64 位無符號整數物件與其他表示形式之間實現相互轉換的型別轉換器。 |
WarningException | 指定按警告(而不是錯誤)處理的異常。 |
Win32Exception | 引發 Win32 錯誤程式碼異常。 |
5,Structs 結構體
SortDescription | 定義要用作集合的排序條件的方向和屬性名。 |
6,Interfaces 介面
IBindingList | 提供在繫結到資料來源時支援複雜方案和簡單方案所需的功能。 |
IBindingListView | 通過提供高階排序和篩選功能來擴充套件IBindingList介面。 |
ICancelAddNew | 在向集合新增新項時新增事務性功能。 |
IChangeTracking | 定義用於查詢物件的更改和重置已更改狀態的機制。 |
ICollectionView | 使集合具有當前記錄管理、自定義排序、篩選和分http://www.cppcns.com組功能。 |
ICollectionViewFactory | 可以實現集合以建立其資料的檢視的介面。正常情況下,使用者程式碼不在此介面上呼叫方法。 |
ICollectionViewLiveShaping | 定義能夠使CollectionView排序,分組和篩選的屬性。 |
IComNativeDescriptorHandler | 提供 COM 物件和TypeDescriptor之間的頂級對映層。 |
IComponent | 提供全部元件所需的功能。 |
IContainer | 提供容器的功能。容器是在邏輯上包含零個或多個元件的物件。 |
ICustomTypeDescriptor | 提供為物件提供動態自定義型別資訊的介面。 |
IDataErrorInfo | 提供功能,該功能提供使用者介面可以繫結的自定義錯誤資訊。 |
IEditableCollectionView | 定義CollectionView所實現的方法和屬性,用於向集合提供編輯功能。 |
IEditableCollectionViewAddNewItem | 定義CollectionView所實現的方法和屬性,它們可用於指定新增特定型別的項。 |
IEditahttp://www.cppcns.combleObject | 提供提交或回滾對用作資料來源的物件所做更改的功能。 |
IExtenderProvider | 定義將屬性擴充套件到容器中的其他元件的介面。 |
IIntellisenseBuilder | 提供便於檢索生成器的名稱並顯示該生成器的介面。 |
IItemProperties | 定義一個提供物件屬性相關資訊的屬性。 |
IListSource | 向物件提供返回可以繫結到資料來源列表的功能。 |
INestedContainer | 提供巢狀容器的功能,巢狀容器邏輯上可包含零個或多個其他元件,且這類容器由父元件擁有。 |
INestedSite | 提供檢索元件的完全巢狀名稱的能力。 |
INotifyDataErrorInfo | 定義資料實體類可實現以提供自定義同步和非同步驗證支援的成員。 |
INotifyPropertyChanged | 通知客戶端屬性值已更改。 |
INotifyPropertyChanging | 通知客戶端屬性值正在更改。 |
IRaiseItemChangedEvents | 指示類是否將屬性更改事件轉換為ListChanged事件。 |
IRevertibleChangeTracking | 提供對回滾更改的支援 |
ISite | 提供站點所需的功能。 |
ISupportInitialize | 指定該物件支援對批初始化的簡單的事務處理通知。 |
ISupportInitializeNotification | 允許協調元件及其依賴屬性的初始化。 |
ISynchronizeInvoke | 提供同步或非同步執行委託的方法。 |
ITypeDescriptorContext | 提供有關元件的上下文資訊,如其容器和屬性描述符。 |
ITypedList | 提供發現可繫結列表架構的功能,其中可用於繫結的屬性不同於要繫結到的物件的公共屬性。 |
7,Enums 列舉
BindableSupport | 指定值來表示是否可以將屬性繫結到資料元素或另一個屬性。 |
BindingDirection | 指定模板是否可以用一種方式或兩種方式繫結。 |
CollectionChangeAction | 指定如何更改集合。 |
DataObjectMethodType | 根據應用於某方法的DataObjectMethodAttribute的指定,標識該方法所執行的資料操作型別。 |
DesignerSerializationVisibility | 指定屬性對設計時序列化程式所具有的可見性。 |
EditorBrowsableState | 從編輯器內指定屬性或方法的可瀏覽狀態。 |
InheritanceLevel | 定義繼承級別型別的識別符號。 |
LicenseUsageMode | 指定何時可以使用License。 |
ListChangedType | 指定列表的更改方式。 |
ListSortDirection | 指定排序操作的方向。 |
MaskedTextResultHint | 指定簡潔描述掩碼文字分析操作結果的值。 |
NewItemPlaceholderPosition | 指定新項的佔位符在集合中的顯示的位置。 |
PropertyFilterOptions | 指定哪些屬性應由型別描述符報告,尤其是GetProperties(Object)方法。此列舉用於指定Filter屬性的值。 |
PropertyTabScope | 定義指示“屬性”視窗中選項卡的持續範圍的識別符號。 |
RefreshProperties | 定義指示“屬性”視窗重新整理型別的識別符號。 |
ToolboxItemFilterType | 定義用於指示ToolboxItemFilterAttribute使用的篩選器型別的識別符號。 |
8,Delegates 委託
AddingNewEventHandler | 表示用來處理AddingNew事件的方法。 |
AsyncCompletedEventHandler | 表示將處理非同步操作的 MethodNameCompleted事件的方法。 |
CancelEventHandler | 表示處理可取消事件的方法。 |
CollectionChangeEventHandler | 表示處理將元素新增到集合中或從集合中移除元素時引發的CollectionChanged事件的方法。 |
CurrentChangingEventHandler | 表示CurrentChanging事件的處理方法。 |
DoWorkEventHandler | 表示用來處理DoWork事件的方法。此類不能被繼承。 |
HandledEventHandler | 表示可以處理事件的方法,這些事件在事件處理程式返回後可能需要或不需要進行進一步處理。 |
ListChangedEventHandler | 表示將處理IBindingList類的ListChanged事件的方法。 |
ProgressChangedEventHandler | 表示將處理BackgroundWorker類的ProgressChanged事件的方法。此類不能被繼承。 |
PropertyChangedEventHandler | 表示將處理PropertyChanged事件的方法,該事件在更改元件上的屬性時引發。 |
PropertyChangingEventHandler | 表示將對PropertyChanging介面的INotifyPropertyChanging事件進行處理的方法。 |
RefreshEventHandler | 表示處理當Refreshed或元件在設計時被更改時引發的Type事件的方法。 |
RunWorkerCompletedEventHandler | 表示將處理RunWorkerCompleted類的BackgroundWorker事件的方法。 |
到此這篇關於C#名稱空間System.ComponentModel屬性方法彙總的文章就介紹到這了。希望對大家的學習有所幫助,也希望大家多多支援我們。