共用方式為


功能屬性 (POS for .NET v1.14 SDK 文件)

某些屬性無法直接在服務物件內設定。 這最常發生於功能屬性 (名稱具有 Cap 前置詞的屬性)。 根據 Unified Point of Service (UnifiedPOS) 規格,這些屬性必須為唯讀,因此服務物件需要實作專屬的機制,才能變更這些屬性值。

BaseClass 屬性

Microsoft Point of Service for .NET (POS for .NET) 基底類別具有受保護的屬性 Properties,以用於此目的。 此屬性會傳回協助程式類別,其中具有基底類型中所實作的唯讀屬性可寫入版本。 例如,PinPadBase 具有名稱為 Properties 的屬性,且會傳回類型 PinPadProperties 的物件。 此物件包含的屬性用於設定各種 PinPad 特定功能屬性,例如 CapDisplay

PosCommon 屬性

除了裝置特定的屬性類別以外,基底基本類別的所有 POS for .NET 也具有名稱為 CommonProperties 的受保護屬性,該屬性會傳回 CommonProperties 類型的物件。 此協助程式類別用於修改 PosCommon 中找到的功能和狀態屬性。

使用協助程式類別來設定屬性

一般而言,服務物件應一律使用協助程式類別來存取通用及類別特定的屬性值。 服務物件可寫入這些屬性,且一律包含適當值。

當特定值變更時,服務物件開發人員應知道適用於 .NET 架構的 POS 可能執行哪些動作。 例如,服務物件通常不應變更 CommonProperties.State,因為這可能會干擾 POS for .NET 內部狀態。 同樣,服務物件開發人員也應知道,變更 CommonProperties.PowerState 可能會將 StatusUpdateEvent 事件傳送至應用程式。

注意

從 POS for .NET 基底基本類別衍生時,服務物件通常不應將 CommonProperties.State 值變更為 ControlState.Closed。 如此可防止清除事件佇列,且稍後當 POS for .NET 嘗試處理已在佇列中的事件時,可能會擲回例外狀況。

另請參閱