首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WIX工具集如何设置属性

WIX工具集如何设置属性
EN

Stack Overflow用户
提问于 2015-06-05 14:11:20
回答 1查看 5K关注 0票数 8

这看起来应该是直观的,但到目前为止,一切都不是。当我的自定义对话框第一次打开时,我如何简单地设置我在product.wxs中定义的属性?

我的属性称为“端口”,它被初始化为空白。我还有一个叫做"df_Port“的名字,我把它设为"8080”。(这些设置在我的Product.wxs中)当我的自定义对话框打开时,我想将“端口”设置为"df_Port“。我在对话框上还有一个编辑控件,它的“属性”设置设置为“端口”。所以很明显,用户应该能够更新端口,但是如果他们按下“后退”按钮,但最终回到这个对话框,编辑控件的默认值应该回到"8080“

我尝试过SetProperty,但它需要一个前后属性,而且我对此一无所知。我也尝试过创建一个CustomAction,但这也不起作用:

代码语言:javascript
复制
<CustomAction Id="caPort" Property="Port" Value="[df_Port]"/>

控件显示为空白,而不是"8080“。

我使用的是Wix3.9 R2

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-09 15:38:49

没有人回答或评论我的问题。然而,经过多次尝试和错误之后,我想出了一个解决方案。我想我应该把它放在这里以防别人有同样的问题。

1)首先,我必须将属性命名为所有大写。所以在我的product.wxs中我声明:

代码语言:javascript
复制
<Property Id="DF_PORT" Value="8080" Secure="yes"/>
<Property Id="PORT" Secure="yes"/>

2)然后在自定义配置对话框之前添加一个发布标记并附加到对话框的Next按钮上:

代码语言:javascript
复制
<Publish Dialog="PrecedingDialogName" Control="Next" Property="PORT" Value="[DF_PORT]">1</Publish>

3)在我的自定义对话框中,我只是将一个Edit控件绑定到PORT属性:

代码语言:javascript
复制
<Control Id="Port" Type="Edit" X="130" Y="88" Width="60" Height="16" Property="PORT" Text="{\WixUI_Font_Normal}" Integer="yes" RightAligned="yes" />

控件将显示默认值。如果我编辑值,然后按“后退”按钮,步骤2将重新加载默认值,而不是记住用户输入的内容。

在使用worst几个星期之后,我可以诚实地说,这是我见过的最糟糕和最不直观的开发片段之一!

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30668723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档