標籤:
// Developer Express Code Central Example:// How to: Disable Property Editors Based on a Business Rule// // This example demonstrates how to hide and disable property editors via the// Conditional Appearance module (the obsolete Conditional Editor State module is// used in versions prior to 11.2). The complete description is available in the// How to: Disable Property Editors Based on a Business Rule// (ms-help://DevExpress.Xaf/CustomDocument3221.htm) help topic.// // You can find sample updates and versions for different programming languages here:// http://www.devexpress.com/example=E1672using System;using System.ComponentModel;using DevExpress.Xpo;using DevExpress.Data.Filtering;using DevExpress.ExpressApp;using DevExpress.Persistent.Base;using DevExpress.Persistent.BaseImpl;using DevExpress.Persistent.Validation;using DevExpress.ExpressApp.ConditionalAppearance;using DevExpress.ExpressApp.Editors;namespace EditorStateExample.Module { [DefaultClassOptions] [ImageName("BO_Person")] public class Contact : BaseObject { public Contact(Session session) : base(session) { } public string Name { get { return GetPropertyValue<string>("Name"); } set { SetPropertyValue<string>("Name", value); } } [ImmediatePostData] public bool IsMarried { get { return GetPropertyValue<bool>("IsMarried"); } set { SetPropertyValue<bool>("IsMarried", value); } } [Appearance("Single", Visibility = ViewItemVisibility.Hide, Criteria = "!IsMarried", Context="DetailView")] public string SpouseName { get { return GetPropertyValue<string>("SpouseName"); } set { SetPropertyValue<string>("SpouseName", value); } } [ImmediatePostData] public string Address1 { get { return GetPropertyValue<string>("Address1"); } set { SetPropertyValue<string>("Address1", value); } } [Appearance("AddressOneIsEmpty", Enabled = false, Criteria = "IsNullOrEmpty(Address1)")] public string Address2 { get { return GetPropertyValue<string>("Address2"); } set { SetPropertyValue<string>("Address2", value); } } }}
轉載於:http://www.cnblogs.com/Tonyyang/
XAF 如何基於商務規則禁用屬性