在自定义操作中启用/禁用功能

Posted

技术标签:

【中文标题】在自定义操作中启用/禁用功能【英文标题】:Enabling / disabling Feature in custom action 【发布时间】:2015-03-22 14:31:19 【问题描述】:

我有一个包含 2 个功能的小型安装项目,默认情况下都已发布(级别 = 1)。在自定义操作的某些情况下,我想取消发布(设置级别 = 4)其中一项功能。用 C# 编写的自定义操作。我该怎么做?

【问题讨论】:

【参考方案1】:

在哪里可以这样做是有限制的,请参阅 Condition 表的文档并在 CostFinalize 之前执行此操作:

https://msdn.microsoft.com/en-us/library/aa368014(v=vs.85).aspx

所以假设你已经控制住了,并且你在安装的早期,然后使用功能条件。听上去,您已经有了一个级别为 1 的 Feature 元素,因此添加一个条件,当属性设置为某物时将其设置为 4。在您的代码中只需设置属性,级别将在 CostFinalize 处更改。

例子:

Feature Id="FeatureX" Title="Feature X" Level="1"
   <Condition Level="4">   <![CDATA[PROPVALUE=5]]>   </Condition> 

【讨论】:

我完全理解了方法逻辑,我缺少的是我找不到的代码sn-p,如何访问特征对象并将其设置为4 您没有 - 您设置了使用 Feature 条件的属性值,以便级别变为 4。请参阅我添加的 sn-p。设置属性值,使满足条件时等级变为4。

以上是关于在自定义操作中启用/禁用功能的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ACF 中继器上启用重复功能

jQuery .click() 在自定义函数之前执行默认动作

我可以在自定义组件中禁用 CHANGE 事件吗?

如何使用 Swift 2.2 中的 ResearchKit 在自定义活动步骤中禁用下一个按钮?

如何在自定义 UIView 下方的 MKMapview 中启用 touchEvents(滚动和平移)?

markdown 在自定义PHP网站上启用SSL证书