从DetailVIew隐藏SimpleAction

时间:2019-02-19 09:46:35

标签: c# visual-studio devexpress xaf

我在“ myclass”中有一个简单的操作,我希望在修改特定属性时将其隐藏 这是我的代码示例:

     protected override void OnActivated()
            {
                base.OnActivated();
                ObjectSpace.ObjectChanged += ObjectSpace_ObjectChanged;
            }



   void ObjectSpace_ObjectChanged(object sender, ObjectChangedEventArgs e)
    {
         if( e.PropertyName == "PropertyName")
              {
                  if (PropertyName  == "A")
                  {
                      // Hide or Desactivate my SimpleAction
                  }
                 else
                  {
                // Show or Actived my SimpleAction
                  }

            }
    }

我如何完成此任务?

1 个答案:

答案 0 :(得分:2)

对于此类常见问题,您应该首先搜索DevExpress支持中心。例如,对于此查询https://search.devexpress.com/?q=hide%20action%20ObjectMethodActions&m=SupportCenter,您可以获取此Approved solution

  

如“如何:使用动作属性创建动作”中所述,使用Object属性声明的动作由ObjectMethodActionsViewController控制器收集。因此,您可以创建一个视图控制器,在视图控制器中访问ObjectMethodActionsViewController实例,并按照如何:在代码中停用(隐藏)动作中的描述隐藏所需的动作。您可以通过操作ID在ObjectMethodActionsViewController Actions集合中找到您的操作。根据“如何:使用操作属性创建操作”一文,您的ID将是您的业务类名称和方法名称,并用点号分隔。