繁体   English   中英

如何在安装项目中编写自定义对话框?

[英]How to code for Custom Dialog in Setup Project?

我为我的.net应用程序创建了一个安装项目。 我想在安装文件夹选择后添加另一个对话框。 我在User Interface面板中添加了该对话框。 在此输入图像描述

它正确地向我展示。

在此输入图像描述

现在,我想根据CustomInstallerClass选定选项编写一些代码。 但是,我不知道如何在Commit进程中获取该值(Selected Radio Button)。 所以,我可以根据单选按钮选择进行进一步的处理。

我不能使用Wix或任何其他第三方工具来创建该包。 我也看过一些其他职位像这样的SO。 但是,我找不到这些解决方案。

编辑:

我正在使用这些代码来检索上下文中的可用参数。 但在结果中我找不到自定义对话框中的任何参数。

protected override void OnCommitted(System.Collections.IDictionary savedState)
{
    string Values = string.Empty;
    foreach (string skey in this.Context.Parameters.Keys)
        Values += skey + Environment.NewLine;
    MessageBox.Show(Values);
    base.OnCommitted(savedState);            
}

结果显示如下。

action
installtype
assemblypath
logfile

当安装项目从VS中取出时,MS似乎已经删除了关于如何执行此操作的演练。 但是,如果你查看那个RadioButtons(2)对话框的属性窗口,你会看到有一个大写的属性名,可能是BUTTON2。 将设置为0或1.将参数传递给install方法的方式就像参数一样,所以你要添加像/ MyButton = [BUTTON2]这样的东西,我想你需要括号。 然后在安装程序类中,您可以说:

StringDictionary myStringDictionary = this.Context.Parameters;

并使用字典上的键MyButton来获取值。 这应该让你接近。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM